diff --git a/awx/sso/conf.py b/awx/sso/conf.py
index ac9b0e76e1..ddfd80fd13 100644
--- a/awx/sso/conf.py
+++ b/awx/sso/conf.py
@@ -148,6 +148,16 @@ register(
placeholder=['username', 'email'],
)
+register(
+ 'SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL',
+ field_class=fields.BooleanField,
+ default=False,
+ label=_('Use Email address for usernames'),
+ help_text=_('Enabling this setting will tell social auth to use the full Email as username instead of the full name'),
+ category=_('Authentication'),
+ category_slug='authentication',
+)
+
###############################################################################
# LDAP AUTHENTICATION SETTINGS
###############################################################################
diff --git a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.test.js b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.test.js
index dd17494386..dc08630ee5 100644
--- a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.test.js
+++ b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationDetail/MiscAuthenticationDetail.test.js
@@ -40,6 +40,7 @@ describe('', () => {
SOCIAL_AUTH_ORGANIZATION_MAP: {},
SOCIAL_AUTH_TEAM_MAP: {},
SOCIAL_AUTH_USER_FIELDS: [],
+ SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL: false,
},
});
await act(async () => {
@@ -79,6 +80,7 @@ describe('', () => {
assertVariableDetail(wrapper, 'Social Auth Organization Map', '{}');
assertVariableDetail(wrapper, 'Social Auth Team Map', '{}');
assertVariableDetail(wrapper, 'Social Auth User Fields', '[]');
+ assertDetail(wrapper, 'Use Email address for usernames', 'Off');
assertDetail(
wrapper,
'Allow External Users to Create OAuth2 Tokens',
diff --git a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.js b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.js
index f19807e842..a8b7814543 100644
--- a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.js
+++ b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.js
@@ -53,7 +53,8 @@ function MiscAuthenticationEdit() {
'SESSION_COOKIE_AGE',
'SOCIAL_AUTH_ORGANIZATION_MAP',
'SOCIAL_AUTH_TEAM_MAP',
- 'SOCIAL_AUTH_USER_FIELDS'
+ 'SOCIAL_AUTH_USER_FIELDS',
+ 'SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL'
);
const authenticationData = {
@@ -242,6 +243,10 @@ function MiscAuthenticationEdit() {
name="SOCIAL_AUTH_USER_FIELDS"
config={authentication.SOCIAL_AUTH_USER_FIELDS}
/>
+
{submitError && }
{revertError && }
diff --git a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.test.js b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.test.js
index cf00ea5716..d84b759113 100644
--- a/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.test.js
+++ b/awx/ui/src/screens/Setting/MiscAuthentication/MiscAuthenticationEdit/MiscAuthenticationEdit.test.js
@@ -32,6 +32,7 @@ const authenticationData = {
SOCIAL_AUTH_ORGANIZATION_MAP: null,
SOCIAL_AUTH_TEAM_MAP: null,
SOCIAL_AUTH_USER_FIELDS: null,
+ SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL: false,
};
describe('', () => {
diff --git a/awx/ui/src/screens/Setting/shared/data.allSettingOptions.json b/awx/ui/src/screens/Setting/shared/data.allSettingOptions.json
index 99e2743e75..c68b11474e 100644
--- a/awx/ui/src/screens/Setting/shared/data.allSettingOptions.json
+++ b/awx/ui/src/screens/Setting/shared/data.allSettingOptions.json
@@ -859,6 +859,15 @@
"read_only": false
}
},
+ "SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL": {
+ "type": "boolean",
+ "required": false,
+ "label": "Use Email address for usernames",
+ "help_text": "Enabling this setting will tell social auth to use the full Email as username instead of the full name",
+ "category": "Authentication",
+ "category_slug": "authentication",
+ "default": false
+ },
"SOCIAL_AUTH_OIDC_KEY": {
"type": "string",
"label": "OIDC Key",
@@ -4554,6 +4563,14 @@
"type": "string"
}
},
+ "SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL": {
+ "type": "boolean",
+ "label": "Use Email address for usernames",
+ "help_text": "Enabling this setting will tell social auth to use the full Email as username instead of the full name",
+ "category": "Authentication",
+ "category_slug": "authentication",
+ "default": false
+ },
"SOCIAL_AUTH_OIDC_KEY": {
"type": "string",
"label": "OIDC Key",
diff --git a/awx/ui/src/screens/Setting/shared/data.allSettings.json b/awx/ui/src/screens/Setting/shared/data.allSettings.json
index 171b2423e3..bf73ce0308 100644
--- a/awx/ui/src/screens/Setting/shared/data.allSettings.json
+++ b/awx/ui/src/screens/Setting/shared/data.allSettings.json
@@ -103,6 +103,7 @@
"SOCIAL_AUTH_ORGANIZATION_MAP":null,
"SOCIAL_AUTH_TEAM_MAP":null,
"SOCIAL_AUTH_USER_FIELDS":null,
+ "SOCIAL_AUTH_USERNAME_IS_FULL_EMAIL":false,
"AUTH_LDAP_SERVER_URI":"ldap://ldap.example.com",
"AUTH_LDAP_BIND_DN":"cn=eng_user1",
"AUTH_LDAP_BIND_PASSWORD":"$encrypted$",