有人可以建议我如何能够检索当前登录的Active Directory用户吗?
我一直在研究如何在JSF中完成这项工作:
javax.faces.context.FacesContext.getCurrentInstance().getExternalContext().getRequest().getUserPrincipal()
不幸的是,这似乎总是检索多米诺骨牌用户。
答案 0 :(得分:2)
没有“Active Directory用户”这样的东西。使用Domino服务器进行身份验证时,无论您对用户进行了哪些身份验证,都始终会获得“Domino用户”。我怀疑AD在身份验证时提供“Domino用户”名称,根据您的配置,它可能与AD凭据看起来不同。 因此,您的行动方案将是对AD进行LDAP查找以获得匹配的AD用户。
答案 1 :(得分:1)
如果您使用LDAP distinguishedName属性,那么您可以使用如下公式获取LDAP身份验证用户的名称:
@If(
@NameLookup([NoUpdate]:[NoSearching]; @UserName ;"Fullname")!=""; @Name([CN];@UserName);
@NameLookup([NoUpdate]:[TrustedOnly]; @UserName; "cn")=@Name([CN];@UserName); @NameLookup( [NoUpdate]:[TrustedOnly]; @UserName ;"displayName");
@UserName );
但是在Xpages中我认为你需要使用Java来进行LDAP查找。