2

.Net フレームワーク (C# および Powershell) を使用して Kerberos 化された HTTP サービスにアクセスすると、一貫性のない動作が発生します。これは、DNS 構成と、Kerberos サービスの A レコードの代わりにCNAMEを使用することに関連しています。Microsoft が提案する回避策は、ホスト名に A レコードを使用していることを確認することですが、これは私の企業環境ではオプションではありません。

特定の URL に対して特定の SPN を強制し、SPN に対して URL と同じホスト名を使用できるようにするソリューションが必要です。または、URL を SPN に解決するための一貫したポリシーを強制するオプション。

4

1 に答える 1

1

いつものように、探しているものがわかれば、ソリューションを見つけるのは非常に簡単です ;-) この例では、ポート 8080 で HTTPS Web サービスを使用しています。

C#:

System.Net.AuthenticationManager.CustomTargetNameDictionary
    .Add("https://my-service.tld:8080/", "HTTP/my-service.tld");

パワーシェル:

[System.Net.AuthenticationManager]::CustomTargetNameDictionary.
    Add("https://my-service.tld:8080/", "HTTP/my-service.tld")

末尾のスラッシュを忘れないでください。:8080ポート 80 を使用している場合は削除します。

参考文献:

于 2016-09-28T07:23:47.027 に答える