如何从Sitecore中的Active Directory用户获取用户标识?

时间:2013-10-21 13:07:15

标签: active-directory ldap sitecore

我们使用Active Directory管理Sitecore实例中的部分帐户。在数据库中,用户名采用domain\username格式(正如您所期望的那样)。

在Sitecore中,我可以做到

var user = User.FromName(item["__Created by"], true)

我找回了一个用户对象,但我似乎无法在Guid表格中获得与该用户关联的aspnet_Users

除了使用AD之外,我们对会员提供商没有做任何有趣的事情。

编辑:我可能应该说:我已经获得了ProviderUserKey,但它不是来自UserId表的aspnet_Users,如果它是这是使用Sitecore附带的会员提供商,它是非常不同的(如果有人有兴趣,它的类型为System.Security.Principal.IdentityReference.SecurityIdentifier

1 个答案:

答案 0 :(得分:2)

如果不直接查询数据库,这是不可能的。您可以编写一个查询数据库的扩展方法,但我建议不要使用API​​故意隐藏/抽象的数据库字段。如果您提供有关您希望获得UserId的更多信息,我们可能会帮助您找到一些替代方案。