mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
verify for email domain for everything but ldap / saml (#6718)
This commit is contained in:
@@ -176,7 +176,7 @@ func IsFirstUserAccount() bool {
|
||||
}
|
||||
|
||||
func CreateUser(user *model.User) (*model.User, *model.AppError) {
|
||||
if !user.IsSSOUser() && !CheckUserDomain(user, utils.Cfg.TeamSettings.RestrictCreationToDomains) {
|
||||
if !user.IsLDAPUser() && !user.IsSAMLUser() && !CheckUserDomain(user, utils.Cfg.TeamSettings.RestrictCreationToDomains) {
|
||||
return nil, model.NewLocAppError("CreateUser", "api.user.create_user.accepted_domain.app_error", nil, "")
|
||||
}
|
||||
|
||||
@@ -313,15 +313,13 @@ func CheckUserDomain(user *model.User, domains string) bool {
|
||||
|
||||
domainArray := strings.Fields(strings.TrimSpace(strings.ToLower(strings.Replace(strings.Replace(domains, "@", " ", -1), ",", " ", -1))))
|
||||
|
||||
matched := false
|
||||
for _, d := range domainArray {
|
||||
if strings.HasSuffix(strings.ToLower(user.Email), "@"+d) {
|
||||
matched = true
|
||||
break
|
||||
return true
|
||||
}
|
||||
}
|
||||
|
||||
return matched
|
||||
return false
|
||||
}
|
||||
|
||||
// Check if the username is already used by another user. Return false if the username is invalid.
|
||||
|
||||
@@ -457,31 +457,25 @@ func IsInRole(userRoles string, inRole string) bool {
|
||||
if r == inRole {
|
||||
return true
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return false
|
||||
}
|
||||
|
||||
func (u *User) IsSSOUser() bool {
|
||||
if u.AuthService != "" && u.AuthService != USER_AUTH_SERVICE_EMAIL {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
return u.AuthService != "" && u.AuthService != USER_AUTH_SERVICE_EMAIL
|
||||
}
|
||||
|
||||
func (u *User) IsOAuthUser() bool {
|
||||
if u.AuthService == USER_AUTH_SERVICE_GITLAB {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
return u.AuthService == USER_AUTH_SERVICE_GITLAB
|
||||
}
|
||||
|
||||
func (u *User) IsLDAPUser() bool {
|
||||
if u.AuthService == USER_AUTH_SERVICE_LDAP {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
return u.AuthService == USER_AUTH_SERVICE_LDAP
|
||||
}
|
||||
|
||||
func (u *User) IsSAMLUser() bool {
|
||||
return u.AuthService == USER_AUTH_SERVICE_SAML
|
||||
}
|
||||
|
||||
// UserFromJson will decode the input and return a User
|
||||
|
||||
Reference in New Issue
Block a user