diff --git a/services/web/app/src/models/SSOConfig.js b/services/web/app/src/models/SSOConfig.js index 6734b29f57..a242580c9c 100644 --- a/services/web/app/src/models/SSOConfig.js +++ b/services/web/app/src/models/SSOConfig.js @@ -11,6 +11,7 @@ const SSOConfigSchema = new Schema( validated: { type: Boolean, default: false }, enabled: { type: Boolean, default: false }, useSettingsUKAMF: { type: Boolean, default: false }, + emailAttribute: { type: String }, }, { diff --git a/services/web/frontend/extracted-translations.json b/services/web/frontend/extracted-translations.json index 04280f3a9c..91d256e4d4 100644 --- a/services/web/frontend/extracted-translations.json +++ b/services/web/frontend/extracted-translations.json @@ -514,6 +514,7 @@ "email_address": "", "email_address_is_invalid": "", "email_already_registered": "", + "email_attribute": "", "email_confirmed_onboarding": "", "email_confirmed_onboarding_message": "", "email_limit_reached": "", @@ -1632,6 +1633,7 @@ "sso_already_setup_good_to_go": "", "sso_config_deleted": "", "sso_config_prop_help_certificate": "", + "sso_config_prop_help_email": "", "sso_config_prop_help_first_name": "", "sso_config_prop_help_last_name": "", "sso_config_prop_help_redirect_url": "", diff --git a/services/web/frontend/js/utils/meta.ts b/services/web/frontend/js/utils/meta.ts index 5eec4e297b..364beff197 100644 --- a/services/web/frontend/js/utils/meta.ts +++ b/services/web/frontend/js/utils/meta.ts @@ -254,6 +254,11 @@ export interface Meta { 'ol-stripeCustomerId': string 'ol-subscription': any // TODO: mixed types, split into two fields 'ol-subscriptionChangePreview': SubscriptionChangePreview + 'ol-subscriptionFeatures': { + managedUsers?: boolean + groupSSO?: boolean + domainCapture?: boolean + } 'ol-subscriptionId': string 'ol-suggestedLanguage': SuggestedLanguage | undefined 'ol-survey': Survey | undefined diff --git a/services/web/locales/en.json b/services/web/locales/en.json index a1ed896352..62e74ae004 100644 --- a/services/web/locales/en.json +++ b/services/web/locales/en.json @@ -662,6 +662,7 @@ "email_already_registered": "This email address is already associated with a different Overleaf account.", "email_already_registered_secondary": "This email is already registered as a secondary email", "email_already_registered_sso": "This email is already registered. Please log in to your account another way and link your account to the new provider via your account settings.", + "email_attribute": "Email attribute", "email_confirmed_onboarding": "Great! Let’s get you set up", "email_confirmed_onboarding_message": "Your email address is confirmed. Click <0>Continue to finish your setup.", "email_does_not_belong_to_university": "We don’t recognize that domain as being affiliated with your university. Please contact us to add the affiliation.", @@ -2114,6 +2115,7 @@ "sso_already_setup_good_to_go": "Single sign-on is already set up on your account, so you’re good to go.", "sso_config_deleted": "SSO configuration deleted", "sso_config_prop_help_certificate": "Base64 encoded certificate without whitespace", + "sso_config_prop_help_email": "The SAML attribute that specifies the user’s email. This attribute is used when domain capture is enabled.", "sso_config_prop_help_first_name": "The SAML attribute that specifies the user’s first name", "sso_config_prop_help_last_name": "The SAML attribute that specifies the user’s last name", "sso_config_prop_help_redirect_url": "The single sign-on redirect URL provided by your IdP (sometimes called the single sign-on service HTTP-redirect location)", diff --git a/services/web/types/subscription/sso.ts b/services/web/types/subscription/sso.ts index 6500817407..9188301666 100644 --- a/services/web/types/subscription/sso.ts +++ b/services/web/types/subscription/sso.ts @@ -14,6 +14,7 @@ export type SSOConfig = { validated?: boolean enabled?: boolean useSettingsUKAMF?: boolean + emailAttribute?: string } export type GroupSSOLinkingStatus = {