通过ADFS验证用户(活动目录联合服务)(Authenticate user by ADFS (Ac

2019-06-24 13:30发布

我需要检查特定用户是否通过存在或无法在Active Directory ADFS

所以,我想我的ADFScheck user Authentication 通过用户名/密码。

可能有人请提供相同的样本代码或教程。

提前致谢!

Answer 1:

要使用用户名/密码验证就可以使用

信任/ 13 / UsernameMixed

的ADFS 2.0的终点。

如果用户在Active Directory中存在不检查!

在代码中你要求这样的标记:

WSTrustChannelFactory adfsfactory = new WSTrustChannelFactory(new UserNameWSTrustBinding(SecurityMode.TransportWithMessageCredential),
                            StsEndpoint);

adfsfactory.TrustVersion = TrustVersion.WSTrust13;

// Username and Password here...
factory.Credentials.UserName.UserName = "domain\username";
factory.Credentials.UserName.Password = "password";

IWSTrustChannelContract channel = adfsfactory.CreateChannel();

// request the token
SecurityToken token = channel.Issue(rst);

然后创建使用您的令牌服务通道工厂:

var binding = new WS2007FederationHttpBinding(WSFederationHttpSecurityMode.Message);

var factory = new ChannelFactory<IYourInterface >(binding, "your service address");

factory.ConfigureChannelFactory();

IYourInterface channel = factory.CreateChannelWithIssuedToken(token);

希望这可以帮助!



Answer 2:

的AD FS 2.0登录页面支持的用户名/密码认证开箱。 无码或必要的自定义。



Answer 3:

按照@Marnix,这是开箱即用的行为。

然而,仅仅指出:

认证用户是不一样的检查特定用户是否在Active Directory中存在。

例如,用户可能被锁定。 他仍然存在于广告,但将无法进行身份验证。



文章来源: Authenticate user by ADFS (Active Directory Federation Service)