簡體   English   中英

如何使用Apache Shiro在LDAP中使用sAMAccountName或其他任何參數支持登錄?

[英]How to support login using sAMAccountName or any other parameter in LDAP with Apache Shiro?

我想通過此Realm File使用sAMAccountName對用戶進行身份驗證和授權。

final NamingEnumeration<SearchResult> searchResultEnum = ldapCtx.search(searchBase, "objectClass="+groupObjectClass, SUBTREE_SCOPE);

我嘗試了以下操作,但沒有成功。 我正在嘗試將此參數(sAMAccountName)配置為可配置的。 默認情況下,它使用UserPrincipalName和name參數。

情況1:

final NamingEnumeration<SearchResult> searchResultEnum = ldapCtx.search(searchBase, "(&(objectClass=*)(sAmAccountName={0}))", SUBTREE_SCOPE);

案例2:

final NamingEnumeration<SearchResult> searchResultEnum = ldapCtx.search(searchBase, "(&(objectClass=Person)(sAmAccountName={0}))", SUBTREE_SCOPE);

我是否還需要配置其他內容以支持使用sAMAccountName參數的登錄?

要使用samAccountName,您將需要添加domainName。 domainName \\ samaccountname。

如何在samAccountName前面刪除domain \\的此依賴項? 注意:我支持多個域? AFIK,您不能。 在不指定域的情況下如何知道用戶所在的域

我假設搜索庫包含(DC = domain,DC = com),這還不夠嗎? 如果您可以“追蹤”引薦,那么添加DC = domainName,DC = com應該可以,因為搜索中將有多個上下文。

通常,根據您的設置,您可以使用CN = Users,DC = domainName,DC = Com,它無需引用即可工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM