dsql-admin/dsql-app/.local_dist/server/pages/api/connect/verify.js
Benjamin Toby 1564c2811a Updates
2025-01-14 08:24:54 +01:00

16 lines
6.8 KiB
JavaScript

"use strict";(()=>{var e={};e.id=3033,e.ids=[3033],e.modules={75600:e=>{e.exports=require("next/dist/compiled/next-server/pages-api.runtime.prod.js")},79428:e=>{e.exports=require("buffer")},55511:e=>{e.exports=require("crypto")},29021:e=>{e.exports=require("fs")},55591:e=>{e.exports=require("https")},79551:e=>{e.exports=require("url")},96762:(e,r)=>{Object.defineProperty(r,"M",{enumerable:!0,get:function(){return function e(r,t){return t in r?r[t]:"then"in r&&"function"==typeof r.then?r.then(r=>e(r,t)):"function"==typeof r&&"default"===t?r:void 0}}})},77666:(e,r,t)=>{t.r(r),t.d(r,{config:()=>p,default:()=>f,routeModule:()=>_});var o={};t.r(o),t.d(o,{default:()=>d});var n=t(89947),s=t(2706),i=t(96762),a=t(79551),c=t(64166),l=t(67619),u=t(69842);async function d(e,r){if("POST"!==e.method)return r.json({msg:"Failed!"});let t=await (0,u.A)(e,r,!0);if(!t)return r.json({success:!1,msg:"Unauthorized"});let{url:o,key:n,database:s,dbSchema:i,type:d}=e.body;try{let{hostname:e,port:t,protocol:s}=new a.URL(o),i=await (0,c.A)({scheme:s,headers:{Authorization:n},hostname:e,port:t,path:"/api/connect",method:"POST",body:{url:o,key:n}}),l=JSON.parse(i);if(!l?.success)throw Error(l.msg||"Remote request failed");r.json({success:!0,payload:l.payload})}catch(e){console.log("Connect Verification Initialtor Error, =>",e.message),(0,l.A)({component:"/api/connect/verify/main-catch-error",message:e.message,user:t}),r.json({success:!1,msg:"Operation Failed!"})}}let f=(0,i.M)(o,"default"),p=(0,i.M)(o,"config"),_=new n.PagesAPIRouteModule({definition:{kind:s.A.PAGES_API,page:"/api/connect/verify",pathname:"/api/connect/verify",bundlePath:"",filename:""},userland:o})},69842:(e,r,t)=>{t.d(r,{A:()=>c});var o=t(48786),n=t(95969),s=t(29021),i=t.n(s),a=t(89159);async function c(e,r,t){try{let{keyCookieName:s,csrfCookieName:c}=(0,a.A)();if(!e.cookies?.[s]?.match(/./))throw Error("Request Cookies not Found!");let l=(0,n.A)({encryptedString:e.cookies[s]});if(!l)throw Error("Couldn't decrypt auth cookie!");let u=JSON.parse(l);if(!u.csrf_k)throw Error("No `csrf_k` present in user Object!");if(t&&!Object.keys(e.headers).find(e=>e.includes(u.csrf_k)))throw Error("Deep Auth Failed. `csrf` key not found in request headers!");let d=process.env.DSQL_USER_LOGIN_KEYS_PATH;if(!d)throw Error("DSQL_USER_LOGIN_KEYS_PATH env variable not found. Please set this variable.");if(t&&!i().existsSync(`${d}/${u.csrf_k}`))throw Error("Key not found in Auth Keys Folder!");if(0==u.verification_status&&!t){let e=await (0,o.A)(`SELECT verification_status FROM users WHERE id='${u.id}'`);e&&e[0]&&1==e[0].verification_status&&r.setHeader("Set-Cookie",["user_refresh=1"])}if(u?.date&&Date.now()-u.date>6048e5)throw Error("Key expired!");return u}catch(r){return console.log(`userAuth Error for ${e.url}: ${r.message}`),null}}},89159:(e,r,t)=>{t.d(r,{A:()=>o});function o(e){let r=process.env.DSQL_COOKIES_PREFIX||"dsql_",t=process.env.DSQL_COOKIES_KEY_NAME||"key",o=process.env.DSQL_COOKIES_CSRF_NAME||"csrf",n=process.env.DSQL_COOKIES_ONE_TIME_CODE_NAME||"one-time-code",s=e?.database?.replace(/^datasquirel_user_\d+_/,"")||process.env.DSQL_DB_NAME?.replace(/^datasquirel_user_\d+_/,""),i=r;e?.userId&&(i+=`user_${e.userId}_`),s&&(i+=`${s}_`),i+=t;let a=r;e?.userId&&(a+=`user_${e.userId}_`),s&&(a+=`${s}_`),a+=o;let c=r;return e?.userId&&(c+=`user_${e.userId}_`),s&&(c+=`${s}_`),{keyCookieName:i,csrfCookieName:a,oneTimeCodeName:c+=n}}},64166:(e,r,t)=>{t.d(r,{A:()=>c});var o=t(55591),n=t.n(o);let s=require("http");var i=t.n(s),a=t(79551);function c({url:e,method:r,hostname:t,path:o,headers:s,body:c,port:l,scheme:u}){let d=c?JSON.stringify(c):null,f=e?new a.URL(e):null,p={method:r||"GET",hostname:f?f.hostname:t,port:u?.match(/https/i)?443:f?f.protocol?.match(/https/i)?443:f.port:l?Number(l):80,headers:{}};return o&&(p.path=o),s&&(p.headers=s),c&&(p.headers["Content-Type"]="application/json",p.headers["Content-Length"]=d?Buffer.from(d).length:void 0),new Promise((e,r)=>{let t=(u?.match(/https/i)?n():f?.protocol?.match(/https/i)?n():i()).request(p,t=>{var o="";t.on("data",function(e){o+=e}),t.on("end",function(){e(o)}),t.on("error",e=>{console.log("HTTP response error =>",e.message),r(`HTTP response error =>, ${e.message}`)}),t.on("close",()=>{console.log("HTTP(S) Response Closed Successfully")})});c&&t.write(d),t.on("error",e=>{console.log("HTTPS request ERROR =>",e.message),r(`HTTP request error =>, ${e.message}`)}),t.end()})}},67619:(e,r,t)=>{t.d(r,{A:()=>s});var o=t(29021),n=t.n(o);async function s({user:e,message:r,component:t,noMail:o,req:s}){let i=new Date,a=(()=>{if(!s)return null;try{let e=s.headers["x-forwarded-for"],r=s.headers["x-real-ip"],t=s.headers["cf-connecting-ip"],o=Array.isArray(e)?e[0]:e?.split(",")[0],n=t||o||r||s.socket.remoteAddress;if(!n)return null;return String(n)}catch(e){return null}})();try{let o=`🚀 SERVER ERROR ===========================
Error Message: ${r}
Component: ${t}`;e?.id&&e?.first_name&&e?.last_name&&e?.email&&(o+=`
User Id: ${e?.id}
User Name: ${e?.first_name} ${e?.last_name}
User Email: ${e?.email}`),s?.url&&(o+=`
URL: ${s.url}`),s?.body&&(o+=`
Request Body: ${JSON.stringify(s.body,null,4)}`),a&&(o+=`
IP: ${a}`),o+=`
Date: ${i.toDateString()}
========================================`,n().existsSync("./.tmp/error.log")||n().writeFileSync("./.tmp/error.log","","utf-8");let c=n().readFileSync("./.tmp/error.log","utf-8");n().writeFileSync("./.tmp/error.log",o),n().appendFileSync("./.tmp/error.log",`
${c}`)}catch(e){console.log("Server Error Reporting Error:",e.message)}}},95969:(e,r,t)=>{t.d(r,{A:()=>s});var o=t(55511),n=t(79428);function s({encryptedString:e,encryptionKey:r,encryptionSalt:t}){if(!e?.match(/./))return console.log("Encrypted string is invalid"),e;let s=r||process.env.DSQL_ENCRYPTION_PASSWORD,i=t||process.env.DSQL_ENCRYPTION_SALT,a=process.env.DSQL_ENCRYPTION_KEY_LENGTH?Number(process.env.DSQL_ENCRYPTION_KEY_LENGTH):24;if(!s?.match(/.{8,}/))return console.log("Decrption key is invalid"),e;if(!i?.match(/.{8,}/))return console.log("Decrption salt is invalid"),e;let c=(0,o.scryptSync)(s,i,a),l=n.Buffer.alloc(16,0),u=(0,o.createDecipheriv)("aes-192-cbc",c,l);try{let r=u.update(e,"hex","utf8");return r+=u.final("utf8")}catch(r){return console.log("Error in decrypting =>",r.message),e}}},48786:(e,r,t)=>{t.d(r,{A:()=>o});async function o(...e){let r=global.DSQL_DB_CONN;try{if(!r)throw Error("No Connection provided to DB_HANDLER function!");let t=await r.query(...e);return JSON.parse(JSON.stringify(t))}catch(e){return console.log("DB Error =>",e),{success:!1,error:e.message}}finally{await r?.end()}}},2706:(e,r)=>{Object.defineProperty(r,"A",{enumerable:!0,get:function(){return t}});var t=function(e){return e.PAGES="PAGES",e.PAGES_API="PAGES_API",e.APP_PAGE="APP_PAGE",e.APP_ROUTE="APP_ROUTE",e.IMAGE="IMAGE",e}({})},89947:(e,r,t)=>{e.exports=t(75600)}};var r=require("../../../webpack-api-runtime.js");r.C(e);var t=r(r.s=77666);module.exports=t})();