mirror of
https://github.com/casdoor/casdoor.git
synced 2025-09-09 19:22:55 +08:00
fix: add sAMAccountName for AD search (#1869)
This commit is contained in:
@@ -211,7 +211,7 @@ func checkLdapUserPassword(user *User, password string, lang string) string {
|
|||||||
}
|
}
|
||||||
|
|
||||||
searchReq := goldap.NewSearchRequest(ldapServer.BaseDn, goldap.ScopeWholeSubtree, goldap.NeverDerefAliases,
|
searchReq := goldap.NewSearchRequest(ldapServer.BaseDn, goldap.ScopeWholeSubtree, goldap.NeverDerefAliases,
|
||||||
0, 0, false, ldapServer.buildFilterString(user), []string{}, nil)
|
0, 0, false, ldapServer.buildAuthFilterString(user), []string{}, nil)
|
||||||
|
|
||||||
searchResult, err := conn.Conn.Search(searchReq)
|
searchResult, err := conn.Conn.Search(searchReq)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@@ -367,7 +367,7 @@ func (ldapUser *LdapUser) GetLdapUuid() string {
|
|||||||
return ldapUser.Cn
|
return ldapUser.Cn
|
||||||
}
|
}
|
||||||
|
|
||||||
func (ldap *Ldap) buildFilterString(user *User) string {
|
func (ldap *Ldap) buildAuthFilterString(user *User) string {
|
||||||
if len(ldap.FilterFields) == 0 {
|
if len(ldap.FilterFields) == 0 {
|
||||||
return fmt.Sprintf("(&%s(uid=%s))", ldap.Filter, user.Name)
|
return fmt.Sprintf("(&%s(uid=%s))", ldap.Filter, user.Name)
|
||||||
}
|
}
|
||||||
@@ -385,6 +385,8 @@ func (user *User) getFieldFromLdapAttribute(attribute string) string {
|
|||||||
switch attribute {
|
switch attribute {
|
||||||
case "uid":
|
case "uid":
|
||||||
return user.Name
|
return user.Name
|
||||||
|
case "sAMAccountName":
|
||||||
|
return user.Name
|
||||||
case "mail":
|
case "mail":
|
||||||
return user.Email
|
return user.Email
|
||||||
case "mobile":
|
case "mobile":
|
||||||
|
@@ -185,6 +185,7 @@ class LdapEditPage extends React.Component {
|
|||||||
{value: "uid", label: "uid"},
|
{value: "uid", label: "uid"},
|
||||||
{value: "mail", label: "Email"},
|
{value: "mail", label: "Email"},
|
||||||
{value: "mobile", label: "mobile"},
|
{value: "mobile", label: "mobile"},
|
||||||
|
{value: "sAMAccountName", label: "sAMAccountName"},
|
||||||
].map((item) => Setting.getOption(item.label, item.value))} onChange={value => {
|
].map((item) => Setting.getOption(item.label, item.value))} onChange={value => {
|
||||||
this.updateLdapField("filterFields", value);
|
this.updateLdapField("filterFields", value);
|
||||||
}} />
|
}} />
|
||||||
|
Reference in New Issue
Block a user