diff --git a/infra/console.ts b/infra/console.ts index 1e584ca576c..30cf0c4254f 100644 --- a/infra/console.ts +++ b/infra/console.ts @@ -53,6 +53,7 @@ new sst.x.DevCommand("Studio", { // AUTH //////////////// +const ZEN_SESSION_SECRET = new sst.Secret("ZEN_SESSION_SECRET") const GITHUB_CLIENT_ID_CONSOLE = new sst.Secret("GITHUB_CLIENT_ID_CONSOLE") const GITHUB_CLIENT_SECRET_CONSOLE = new sst.Secret("GITHUB_CLIENT_SECRET_CONSOLE") const GOOGLE_CLIENT_ID = new sst.Secret("GOOGLE_CLIENT_ID") @@ -61,7 +62,14 @@ export const auth = new sst.cloudflare.Worker("AuthApi", { domain: `auth.${domain}`, handler: "packages/console/function/src/auth.ts", url: true, - link: [database, authStorage, GITHUB_CLIENT_ID_CONSOLE, GITHUB_CLIENT_SECRET_CONSOLE, GOOGLE_CLIENT_ID], + link: [ + database, + authStorage, + GITHUB_CLIENT_ID_CONSOLE, + GITHUB_CLIENT_SECRET_CONSOLE, + GOOGLE_CLIENT_ID, + ZEN_SESSION_SECRET, + ], }) //////////////// @@ -163,6 +171,7 @@ new sst.cloudflare.x.SolidStart("Console", { AWS_SES_ACCESS_KEY_ID, AWS_SES_SECRET_ACCESS_KEY, ZEN_BLACK, + ZEN_SESSION_SECRET, ...ZEN_MODELS, ...($dev ? [ diff --git a/packages/console/app/src/context/auth.session.ts b/packages/console/app/src/context/auth.session.ts index 726b6c8346c..ee748d31687 100644 --- a/packages/console/app/src/context/auth.session.ts +++ b/packages/console/app/src/context/auth.session.ts @@ -1,4 +1,5 @@ import { useSession } from "@solidjs/start/http" +import { Resource } from "sst" export interface AuthSession { account?: Record< @@ -13,7 +14,7 @@ export interface AuthSession { export function useAuthSession() { return useSession({ - password: "0".repeat(32), + password: Resource.ZEN_SESSION_SECRET.value, name: "auth", maxAge: 60 * 60 * 24 * 365, cookie: { diff --git a/packages/console/core/sst-env.d.ts b/packages/console/core/sst-env.d.ts index 4450c6cb691..96fada3e3c0 100644 --- a/packages/console/core/sst-env.d.ts +++ b/packages/console/core/sst-env.d.ts @@ -130,6 +130,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } } } // cloudflare diff --git a/packages/console/function/sst-env.d.ts b/packages/console/function/sst-env.d.ts index 4450c6cb691..96fada3e3c0 100644 --- a/packages/console/function/sst-env.d.ts +++ b/packages/console/function/sst-env.d.ts @@ -130,6 +130,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } } } // cloudflare diff --git a/packages/console/resource/sst-env.d.ts b/packages/console/resource/sst-env.d.ts index 4450c6cb691..96fada3e3c0 100644 --- a/packages/console/resource/sst-env.d.ts +++ b/packages/console/resource/sst-env.d.ts @@ -130,6 +130,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } } } // cloudflare diff --git a/packages/enterprise/sst-env.d.ts b/packages/enterprise/sst-env.d.ts index 4450c6cb691..96fada3e3c0 100644 --- a/packages/enterprise/sst-env.d.ts +++ b/packages/enterprise/sst-env.d.ts @@ -130,6 +130,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } } } // cloudflare diff --git a/packages/function/sst-env.d.ts b/packages/function/sst-env.d.ts index 4450c6cb691..96fada3e3c0 100644 --- a/packages/function/sst-env.d.ts +++ b/packages/function/sst-env.d.ts @@ -130,6 +130,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } } } // cloudflare diff --git a/sst-env.d.ts b/sst-env.d.ts index 6e8b8e67e6a..035a5fc21dd 100644 --- a/sst-env.d.ts +++ b/sst-env.d.ts @@ -156,6 +156,10 @@ declare module "sst" { "type": "sst.sst.Secret" "value": string } + "ZEN_SESSION_SECRET": { + "type": "sst.sst.Secret" + "value": string + } "ZenData": { "name": string "type": "sst.cloudflare.Bucket"