2017-11-16 11 views
0

C++アプリケーションでActive Directoryに対してユーザーを認証する必要があります。私は何かにバインドし、ユーザーの識別名とパスワードを使用して認証する必要があることを知っています。この識別名は、しばしばカンマで長く、ユーザー名を含みます。LDAPを使用してActive Directoryに対してシングルサインオンを実装する手順は何ですか?

ユーザーがアプリケーションのユーザー名とパスワードのボックスに何かを入力したとします。バインドする識別名はどのようにして見つけられますか?私はそれのための検索クエリを書く必要がありますか?

答えて

1

は、以下を行う必要があります。

  1. は、彼があなたのフォーム、通常、電子メールアドレスまたはユーザーIDまたは一意である何か他のものに入力された内容に基づいて、ユーザのDNのためのADを検索します。 ADが匿名検索をサポートしていない限り、この検索を実行する権限を持つ管理者アカウント/パスワードを使用してADにバインドする必要があります。これは、LDAPフィルタ式を使用して検索されます。トピックを検索する必要があります。

  2. 見つかった場合は、そのエントリのDNとフォームのパスワードを使用してADに再バインドします。

いずれかのステップが失敗した場合、ログインが失敗し、それがあったステップをユーザーに教えていない、すなわち単に「悪い彼に言う、「そのようなユーザーなし」または「間違ったパスワード」を彼に伝えるません。どちらの場合も「資格情報」などとなります。それ以外の場合は、情報を攻撃者に漏らしています。

関連する問題