WCFは、ユーザー名パスワードでWindowsAuthenticationを実行できますか?
-
27-10-2019 - |
質問
Windows認証を使用してイントラネット環境で実行することを目的としたWCFサービスを構築しています。私は、ローカルコンピューターのある種のデフォルト設定と一緒に陽気に作業しています。
問題は、オフサイトデモコンピューターにインストールされたテストする必要があることです。 WCF Service Computerのユーザーアカウントに対して使用されるユーザー名パスワードを使用して実行する必要があります。
これは私のクライアントコードです:
using (ImportServiceClient client = new ImportServiceClient("ImportServiceSoap12", REMOTE_ADDRESS))
{
client.ClientCredentials.Windows.AllowNtlm = true;
client.ClientCredentials.Windows.ClientCredential =
new NetworkCredential(userName, password, computerName);
result = client.Sync(items.ToArray());
}
資格情報をマシンのWindowsアカウントに変換するようにWCFサービスを構成することは可能ですか?
私はあちこちで矛盾する投稿を読んでいますが、IISが認証の一部であるべきではないと確信しています。 ASP.NET認証ノードが適用されるか、それがすべてバインディング構成である場合、私は確信が持てません。
理想的には、HTTPSをセットアップする必要がないように、NTLMタイプ認証になりたいと思います。
解決
資格情報をマシン上のWindowsアカウントに変換するようにWCFサービスを構成することは可能ですか?
いいえ。統合されたWindows認証では、サーバーとクライアントの両方が同じドメイン(またはいずれにせよ、信頼関係のあるドメイン)の一部であることが必要です。サーバー上のローカルコンピューターアカウントに対してIWAを有効に実行することはできません。
他の(潜在的にカスタム)形式の認証を使用してから、サーバーコードのように実行するユーザーになりすまします。
所属していません StackOverflow