diff --git a/dashboard/src/components/EnvComponents/Features.tsx b/dashboard/src/components/EnvComponents/Features.tsx index 6da3028..38477e9 100644 --- a/dashboard/src/components/EnvComponents/Features.tsx +++ b/dashboard/src/components/EnvComponents/Features.tsx @@ -1,133 +1,157 @@ -import React from 'react'; -import { Divider, Flex, Stack, Text } from '@chakra-ui/react'; -import InputField from '../InputField'; -import { SwitchInputType } from '../../constants'; +import React from "react"; +import { Divider, Flex, Stack, Text } from "@chakra-ui/react"; +import InputField from "../InputField"; +import { SwitchInputType } from "../../constants"; const Features = ({ variables, setVariables }: any) => { - return ( -
- {' '} - - Disable Features - - - - - Disable Login Page: - - - - - - - - Disable Email Verification: - - - - - - - - Disable Magic Login Link: - - - - - - - - Disable Basic Authentication: - - - - - - - - Disable Sign Up: - - - - - - - - Disable Strong Password: - - - - - - - - - Disable Multi Factor Authentication (MFA): - - - Note: Enabling this will ignore Enforcing MFA shown below and will - also ignore the user MFA setting. - - - - - - - - - - Enable Features - - - - - - Enforce Multi Factor Authentication (MFA): - - - Note: If you disable enforcing after it was enabled, it will still - keep MFA enabled for older users. - - - - - - - -
- ); + return ( +
+ {" "} + + Disable Features + + + + + Disable secure app cookie: + + + + + + + + Disable secure admin cookie: + + + + + + + + Disable Login Page: + + + + + + + + Disable Email Verification: + + + + + + + + Disable Magic Login Link: + + + + + + + + Disable Basic Authentication: + + + + + + + + Disable Sign Up: + + + + + + + + Disable Strong Password: + + + + + + + + + Disable Multi Factor Authentication (MFA): + + + Note: Enabling this will ignore Enforcing MFA shown below and will + also ignore the user MFA setting. + + + + + + + + + + Enable Features + + + + + + Enforce Multi Factor Authentication (MFA): + + + Note: If you disable enforcing after it was enabled, it will still + keep MFA enabled for older users. + + + + + + + +
+ ); }; export default Features; diff --git a/dashboard/src/constants.ts b/dashboard/src/constants.ts index 3911a40..c15c5b2 100644 --- a/dashboard/src/constants.ts +++ b/dashboard/src/constants.ts @@ -63,6 +63,8 @@ export const TextAreaInputType = { }; export const SwitchInputType = { + DISABLE_APP_COOKIE_SECURE: 'DISABLE_APP_COOKIE_SECURE', + DISABLE_ADMIN_COOKIE_SECURE: 'DISABLE_ADMIN_COOKIE_SECURE', DISABLE_LOGIN_PAGE: 'DISABLE_LOGIN_PAGE', DISABLE_MAGIC_LINK_LOGIN: 'DISABLE_MAGIC_LINK_LOGIN', DISABLE_EMAIL_VERIFICATION: 'DISABLE_EMAIL_VERIFICATION', @@ -133,6 +135,8 @@ export interface envVarTypes { ORGANIZATION_LOGO: string; CUSTOM_ACCESS_TOKEN_SCRIPT: string; ADMIN_SECRET: string; + DISABLE_APP_COOKIE_SECURE: boolean; + DISABLE_ADMIN_COOKIE_SECURE: boolean; DISABLE_LOGIN_PAGE: boolean; DISABLE_MAGIC_LINK_LOGIN: boolean; DISABLE_EMAIL_VERIFICATION: boolean; diff --git a/dashboard/src/graphql/queries/index.ts b/dashboard/src/graphql/queries/index.ts index 977cff8..8494a52 100644 --- a/dashboard/src/graphql/queries/index.ts +++ b/dashboard/src/graphql/queries/index.ts @@ -50,6 +50,8 @@ export const EnvVariablesQuery = ` ORGANIZATION_NAME ORGANIZATION_LOGO ADMIN_SECRET + DISABLE_APP_COOKIE_SECURE + DISABLE_ADMIN_COOKIE_SECURE DISABLE_LOGIN_PAGE DISABLE_MAGIC_LINK_LOGIN DISABLE_EMAIL_VERIFICATION diff --git a/dashboard/src/pages/Environment.tsx b/dashboard/src/pages/Environment.tsx index 045b997..834e9a1 100644 --- a/dashboard/src/pages/Environment.tsx +++ b/dashboard/src/pages/Environment.tsx @@ -71,6 +71,8 @@ const Environment = () => { ORGANIZATION_LOGO: '', CUSTOM_ACCESS_TOKEN_SCRIPT: '', ADMIN_SECRET: '', + DISABLE_APP_COOKIE_SECURE: false, + DISABLE_ADMIN_COOKIE_SECURE: false, DISABLE_LOGIN_PAGE: false, DISABLE_MAGIC_LINK_LOGIN: false, DISABLE_EMAIL_VERIFICATION: false, diff --git a/server/graph/generated/generated.go b/server/graph/generated/generated.go index c69c681..9b51470 100644 --- a/server/graph/generated/generated.go +++ b/server/graph/generated/generated.go @@ -2158,6 +2158,8 @@ input UpdateEnvInput { ALLOWED_ORIGINS: [String!] APP_URL: String RESET_PASSWORD_URL: String + DISABLE_APP_COOKIE_SECURE: Boolean! + DISABLE_ADMIN_COOKIE_SECURE: Boolean! DISABLE_EMAIL_VERIFICATION: Boolean DISABLE_BASIC_AUTHENTICATION: Boolean DISABLE_MAGIC_LINK_LOGIN: Boolean @@ -14858,7 +14860,7 @@ func (ec *executionContext) unmarshalInputUpdateEnvInput(ctx context.Context, ob asMap[k] = v } - fieldsInOrder := [...]string{"ACCESS_TOKEN_EXPIRY_TIME", "ADMIN_SECRET", "CUSTOM_ACCESS_TOKEN_SCRIPT", "OLD_ADMIN_SECRET", "SMTP_HOST", "SMTP_PORT", "SMTP_USERNAME", "SMTP_PASSWORD", "SENDER_EMAIL", "JWT_TYPE", "JWT_SECRET", "JWT_PRIVATE_KEY", "JWT_PUBLIC_KEY", "ALLOWED_ORIGINS", "APP_URL", "RESET_PASSWORD_URL", "DISABLE_EMAIL_VERIFICATION", "DISABLE_BASIC_AUTHENTICATION", "DISABLE_MAGIC_LINK_LOGIN", "DISABLE_LOGIN_PAGE", "DISABLE_SIGN_UP", "DISABLE_REDIS_FOR_ENV", "DISABLE_STRONG_PASSWORD", "DISABLE_MULTI_FACTOR_AUTHENTICATION", "ENFORCE_MULTI_FACTOR_AUTHENTICATION", "ROLES", "PROTECTED_ROLES", "DEFAULT_ROLES", "JWT_ROLE_CLAIM", "GOOGLE_CLIENT_ID", "GOOGLE_CLIENT_SECRET", "GITHUB_CLIENT_ID", "GITHUB_CLIENT_SECRET", "FACEBOOK_CLIENT_ID", "FACEBOOK_CLIENT_SECRET", "LINKEDIN_CLIENT_ID", "LINKEDIN_CLIENT_SECRET", "APPLE_CLIENT_ID", "APPLE_CLIENT_SECRET", "TWITTER_CLIENT_ID", "TWITTER_CLIENT_SECRET", "ORGANIZATION_NAME", "ORGANIZATION_LOGO"} + fieldsInOrder := [...]string{"ACCESS_TOKEN_EXPIRY_TIME", "ADMIN_SECRET", "CUSTOM_ACCESS_TOKEN_SCRIPT", "OLD_ADMIN_SECRET", "SMTP_HOST", "SMTP_PORT", "SMTP_USERNAME", "SMTP_PASSWORD", "SENDER_EMAIL", "JWT_TYPE", "JWT_SECRET", "JWT_PRIVATE_KEY", "JWT_PUBLIC_KEY", "ALLOWED_ORIGINS", "APP_URL", "RESET_PASSWORD_URL", "DISABLE_APP_COOKIE_SECURE", "DISABLE_ADMIN_COOKIE_SECURE", "DISABLE_EMAIL_VERIFICATION", "DISABLE_BASIC_AUTHENTICATION", "DISABLE_MAGIC_LINK_LOGIN", "DISABLE_LOGIN_PAGE", "DISABLE_SIGN_UP", "DISABLE_REDIS_FOR_ENV", "DISABLE_STRONG_PASSWORD", "DISABLE_MULTI_FACTOR_AUTHENTICATION", "ENFORCE_MULTI_FACTOR_AUTHENTICATION", "ROLES", "PROTECTED_ROLES", "DEFAULT_ROLES", "JWT_ROLE_CLAIM", "GOOGLE_CLIENT_ID", "GOOGLE_CLIENT_SECRET", "GITHUB_CLIENT_ID", "GITHUB_CLIENT_SECRET", "FACEBOOK_CLIENT_ID", "FACEBOOK_CLIENT_SECRET", "LINKEDIN_CLIENT_ID", "LINKEDIN_CLIENT_SECRET", "APPLE_CLIENT_ID", "APPLE_CLIENT_SECRET", "TWITTER_CLIENT_ID", "TWITTER_CLIENT_SECRET", "ORGANIZATION_NAME", "ORGANIZATION_LOGO"} for _, k := range fieldsInOrder { v, ok := asMap[k] if !ok { @@ -14993,6 +14995,22 @@ func (ec *executionContext) unmarshalInputUpdateEnvInput(ctx context.Context, ob if err != nil { return it, err } + case "DISABLE_APP_COOKIE_SECURE": + var err error + + ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("DISABLE_APP_COOKIE_SECURE")) + it.DisableAppCookieSecure, err = ec.unmarshalNBoolean2bool(ctx, v) + if err != nil { + return it, err + } + case "DISABLE_ADMIN_COOKIE_SECURE": + var err error + + ctx := graphql.WithPathContext(ctx, graphql.NewPathWithField("DISABLE_ADMIN_COOKIE_SECURE")) + it.DisableAdminCookieSecure, err = ec.unmarshalNBoolean2bool(ctx, v) + if err != nil { + return it, err + } case "DISABLE_EMAIL_VERIFICATION": var err error diff --git a/server/graph/model/models_gen.go b/server/graph/model/models_gen.go index 19fd6d9..645cf4b 100644 --- a/server/graph/model/models_gen.go +++ b/server/graph/model/models_gen.go @@ -277,6 +277,8 @@ type UpdateEnvInput struct { AllowedOrigins []string `json:"ALLOWED_ORIGINS"` AppURL *string `json:"APP_URL"` ResetPasswordURL *string `json:"RESET_PASSWORD_URL"` + DisableAppCookieSecure bool `json:"DISABLE_APP_COOKIE_SECURE"` + DisableAdminCookieSecure bool `json:"DISABLE_ADMIN_COOKIE_SECURE"` DisableEmailVerification *bool `json:"DISABLE_EMAIL_VERIFICATION"` DisableBasicAuthentication *bool `json:"DISABLE_BASIC_AUTHENTICATION"` DisableMagicLinkLogin *bool `json:"DISABLE_MAGIC_LINK_LOGIN"` diff --git a/server/graph/schema.graphqls b/server/graph/schema.graphqls index 5c2aa64..6cbf133 100644 --- a/server/graph/schema.graphqls +++ b/server/graph/schema.graphqls @@ -225,6 +225,8 @@ input UpdateEnvInput { ALLOWED_ORIGINS: [String!] APP_URL: String RESET_PASSWORD_URL: String + DISABLE_APP_COOKIE_SECURE: Boolean! + DISABLE_ADMIN_COOKIE_SECURE: Boolean! DISABLE_EMAIL_VERIFICATION: Boolean DISABLE_BASIC_AUTHENTICATION: Boolean DISABLE_MAGIC_LINK_LOGIN: Boolean