4

によって、特定のユーザーがActiveDirectoryに存在するかどうかを確認する必要がありますADFS

したがって、ADFScheck user Authentication UserName/Passwordで実行する必要があります。

誰かが同じためのサンプルコードまたはチュートリアルを提供していただけませんか。

前もって感謝します!

4

3 に答える 3

5

ユーザー名/パスワード認証を使用するには、

trust/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);

お役に立てれば!

于 2012-05-23T09:55:41.157 に答える
1

AD FS 2.0 サインイン ページは、すぐに使用できるユーザー名/パスワード認証をサポートしています。コードやカスタマイズは必要ありません。

于 2012-05-18T19:48:35.183 に答える
0

@Marnix によると、これは既定の動作です。

ただし、指摘するだけです:

ユーザーの認証は、特定のユーザーが Active Directory に存在するかどうかを確認することと同じではありません。

たとえば、ユーザーがロックアウトされる可能性があります。彼はまだ AD に存在しますが、認証することはできません。

于 2012-05-20T19:15:58.270 に答える