Чтобы использовать проверку подлинности Имя пользователя/пароль, то можете использовать
доверие/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);
Надеется, что это помогает!
Вы на самом деле задаете здесь два вопроса: может ли ADFS проверить, существует ли пользователь в Active Directory и может ли я аутентифицироваться в ADFS, используя имя пользователя и пароль. – flayn