我在檢查這是否爲sitecore錯誤,或者如果我丟失了明顯的東西。具有sitecore域名的匿名用戶
編輯澄清:我遇到的問題是,我想在Domains.config文件來設置的配置設置,以便Sitecore的不應創建(和/或返回)匿名用戶爲此設置的域名。但是,如果我在域上使用Domain.GetUsers()函數,我仍然會返回匿名用戶。
成員資格提供程序是一種自定義構建,並以只讀模式連接到LDAP。
詳細
使用Sitecore的6.4.1和APP_CONFIG /安全性給出以下域配置/ domains.config
<domain name="DOMAINNAME" ensureAnonymousUser="false" anonymousUserName="" everyoneRoleName="" />
,並在domain.config文件這些意見
anonymousUserName: <snip> Set to blank to disable the anonymous user for the domain. Optional
ensureAnonymousUser: Indicates if the domain should ensure that an anonymous user for the domain exists in the Membership database. Optional - default value: false
everyoneRoleName: <snip> Set to blank to disable the everyone role for the domain. Optional - default value: Everyone
如果我使用下面的代碼,
List<Sitecore.Security.Accounts.User> users = new List<Sitecore.Security.Accounts.User>();
var domain = Sitecore.Security.Domains.Domain.GetDomain(DOMAINNAME);
users.AddRange(domain.GetUsers().ToArray<Sitecore.Security.Accounts.User>());
我得到包含在用戶列表中的匿名用戶。我從domain.config文件中的評論中假定,如果我像上面那樣設置域,那麼我不應該得到匿名用戶。
有什麼明顯的我失蹤了嗎?
嗨馬克,ensureAnonymousUser可能是無關我的觀點,但我把它列入,因爲它處理匿名用戶。將其中一個設置爲true可確保在域中不存在匿名用戶時創建該用戶。Sitecore在sitecore域中有一個匿名用戶,但我試圖通過自定義的只讀LDAP成員資格提供程序設置一個非sitecore域,並且我不希望匿名用戶在GetUsers()函數中返回表示非sitecore域名。 – Marko 2011-04-14 05:38:35
很高興知道。您應該更新與該信息的問題,因爲它是更好地瞭解您的問題的必要條件。你有沒有看過[文檔爲LDAP模塊](http://sdn.sitecore.net/Products/LDAP.aspx)? – 2011-04-14 14:18:19
我已編輯該問題以提供澄清。我正在使用一個自定義的LDAP成員資格提供程序,因爲LDAP模塊太多了,並沒有提供給我這個客戶需要的東西。 – Marko 2011-04-14 23:24:15