diff --git a/i18n/en.json b/i18n/en.json
index 50e7525f13..d0c5b85a1f 100644
--- a/i18n/en.json
+++ b/i18n/en.json
@@ -3103,10 +3103,6 @@
"id": "model.config.is_valid.saml_email_attribute.app_error",
"translation": "Invalid Email attribute. Must be set."
},
- {
- "id": "model.config.is_valid.saml_first_name_attribute.app_error",
- "translation": "Invalid First Name attribute. Must be set."
- },
{
"id": "model.config.is_valid.saml_idp_cert.app_error",
"translation": "Identity Provider Public Certificate missing. Did you forget to upload it?"
@@ -3119,10 +3115,6 @@
"id": "model.config.is_valid.saml_idp_url.app_error",
"translation": "SAML SSO URL must be a valid URL and start with http:// or https://."
},
- {
- "id": "model.config.is_valid.saml_last_name_attribute.app_error",
- "translation": "Invalid Last Name attribute. Must be set."
- },
{
"id": "model.config.is_valid.saml_private_key.app_error",
"translation": "Service Provider Private Key missing. Did you forget to upload it?"
diff --git a/model/config.go b/model/config.go
index cb2d100bc0..b111322a11 100644
--- a/model/config.go
+++ b/model/config.go
@@ -1048,14 +1048,6 @@ func (o *Config) IsValid() *AppError {
return NewLocAppError("Config.IsValid", "model.config.is_valid.saml_username_attribute.app_error", nil, "")
}
- if len(*o.SamlSettings.FirstNameAttribute) == 0 {
- return NewLocAppError("Config.IsValid", "model.config.is_valid.saml_first_name_attribute.app_error", nil, "")
- }
-
- if len(*o.SamlSettings.LastNameAttribute) == 0 {
- return NewLocAppError("Config.IsValid", "model.config.is_valid.saml_last_name_attribute.app_error", nil, "")
- }
-
if *o.SamlSettings.Verify {
if len(*o.SamlSettings.AssertionConsumerServiceURL) == 0 || !IsValidHttpUrl(*o.SamlSettings.AssertionConsumerServiceURL) {
return NewLocAppError("Config.IsValid", "model.config.is_valid.saml_assertion_consumer_service_url.app_error", nil, "")
diff --git a/utils/config.go b/utils/config.go
index bb21e50c1a..a42b608b23 100644
--- a/utils/config.go
+++ b/utils/config.go
@@ -296,6 +296,9 @@ func getClientConfig(c *model.Config) map[string]string {
if *License.Features.SAML {
props["EnableSaml"] = strconv.FormatBool(*c.SamlSettings.Enable)
props["SamlLoginButtonText"] = *c.SamlSettings.LoginButtonText
+ props["FirstNameAttributeSet"] = strconv.FormatBool(*c.SamlSettings.FirstNameAttribute != "")
+ props["LastNameAttributeSet"] = strconv.FormatBool(*c.SamlSettings.LastNameAttribute != "")
+ props["NicknameAttributeSet"] = strconv.FormatBool(*c.SamlSettings.NicknameAttribute != "")
}
if *License.Features.Cluster {
diff --git a/webapp/components/admin_console/saml_settings.jsx b/webapp/components/admin_console/saml_settings.jsx
index 9fb78f472f..fe8acaf160 100644
--- a/webapp/components/admin_console/saml_settings.jsx
+++ b/webapp/components/admin_console/saml_settings.jsx
@@ -455,7 +455,7 @@ export default class SamlSettings extends AdminSettings {
helpText={