使用 AD 对不同域进行身份验证
Posted
技术标签:
【中文标题】使用 AD 对不同域进行身份验证【英文标题】:using AD to authenticate to different domains 【发布时间】:2010-08-02 17:44:40 【问题描述】:所以我们一直在使用同一个登录神连接到 asp.net 中的各个域,有和没有 MVC。代码有效。
我们有一台新服务器,第一个运行服务器 2008 r2,其目录结构与已运行的其中一个类似。
使用forms认证,我在web.config中设置
<add name="ADConnectionString" connectionString="LDAP://10.1.XXX.XXX"/>
和
<!--<authentication mode="Windows" />-->
<membership defaultProvider="MyADMembershipProvider" >
<providers >
<add name="MyADMembershipProvider"
type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
connectionStringName="ADConnectionString"
connectionUsername="XXXX\Brown.Eric"
connectionPassword="XXXX"
connectionProtection="None"
/>
</providers>
</membership>
它可以很好地连接以构建会员提供程序,但是当我尝试使用完全相同的用户名和密码登录表单登录页面(股票 asp.net 的东西)时,它无法登录。
同一个用户,同一个用于连接会员提供商的密码。
如果我在 web.config 中更改密码,我会收到错误消息,表明它不正确,因此我知道会员资格提供商正在与这些凭据建立连接。
我想不通的是为什么我不能使用相同的凭据登录?
我已经检查过: 用户未锁定。 用户未设置为在下次登录时更改密码。 用户未过期。
感谢任何帮助或提示。
谢谢,
卡尔-
【问题讨论】:
【参考方案1】:想通了,无意中从上面删除了使用 SAM 帐户设置 config,它想让我改用 userPrincipalName。
将其切换回 sam 并按预期工作。
卡尔-
【讨论】:
我遇到了同样的问题,但无法解决,您能否使用正确的会员定义更新您的 OP? 在连接保护之前添加 attributeMapUsername="SAMAccountName" = none以上是关于使用 AD 对不同域进行身份验证的主要内容,如果未能解决你的问题,请参考以下文章
使用 Spring-boot Application 中的 Spring Security 使用 Active Directory(使用 AD 域)对用户进行身份验证时出现问题
使用 Xamarin Forms 使用自签名证书对 Azure AD 进行身份验证
如何使用 Azure AD 对 VueJS 应用程序进行身份验证?