Active Directory 認証に関する何百万もの投稿を読みましたが、特に私の問題に関する投稿は見つかりませんでした。
MVC4フォーム認証を使用してActive Directoryに対してユーザーを認証し、オプションとしてドメイン名を挿入できるようにしたい:
acc: domain.com\username or username
pwd: password
私の会社には 20 のサブドメインがあり、各ドメインを認証する必要があります。そのため、ドメインをアプリ構成に保持してそこから選択するオプションが好きではありません。
ディレクトリ エントリ:
var directoryEntry = new DirectoryEntry("LDAP://" + domain, userName, password);
素晴らしいでしょうが、ユーザーがユーザー名の前にドメインを置かない場合はどうなりますか? 私は例外を受け取り、ユーザーは認証されません。メソッドが欲しい:
public bool AuthenticateUser(string username, string password)
{
Checking if username has domain name included;
use some kind of authetication method;
returns true/false;
}
手動でユーザー名を解析し、すべての if 条件などをチェックすると、私の方法はがらくたのように見えます。おそらく、ユーザーがドメイン\ユーザー名またはユーザー名だけを入力できるようにするオプションを提供するアプリ構成のある種のパラメーターである可能性があります。次に、ドメイン + ユーザー名またはユーザー名のみを取得し、AD に対してユーザーを認証できます。
前もって感謝します。