ARR を使用して Lync 2013 内部 Web サービスの負荷分散を行うと認証が失敗する

ARR を使用して Lync 2013 内部 Web サービスの負荷分散を行うと認証が失敗する

私はWindows Server 2012 R2でApplication Request Routing 3.0を使用して、Lync 2013フロントエンドプール上の内部Webサービスの負荷を分散しています。ない外部 Web サービスのリバース プロキシに使用しています (そのためには別のリバース プロキシがあります)。この顧客には他に使用できる負荷分散ソリューションがないため、これをロード バランサーとしてのみ使用しています。

すべての Lync 内部 Web サービス URL が ARR サーバーを指すように DNS を構成し、プール内の 2 つの Lync フロントエンド サーバーを含むサーバー ファームを定義し、URL またはホスト名に関係なく、すべての HTTP および HTTPS 要求をこのファームにルーティングするように ARR を構成しました。ARR サーバー上の IIS の既定の Web サイトは、匿名認証のみに構成されています。

要求は正しくルーティングされますが、認証されたすべての Lync Web サービス (多数あります) で認証が失敗します。

問題は Kerberos 認証にあると判明し、Google で簡単に検索したところ、Kerberos 認証を使用して ARR 経由で認証された Web サイト/サービスを公開するときに認証の問題を抱えている人が多数いることがわかりました。Lync サーバー上の IIS で「ネゴシエート」認証方法を手動で無効にし、「NTLM」のみを残すようにしたところ、この設定ではすべて正常に動作しました。これは、問題が実際には Kerberos 認証によって発生していることを示しています。ただし、Lync サーバー上の IIS 構成をいじることは完全にサポートされておらず、構成の更新が行われたり Lync の更新プログラムがインストールされたりすると、手動で変更した内容がリセットされる可能性が高いため、この方法で IIS を手動で構成することはできません。

要求が ARR サーバー経由でルーティングされるときに、内部 Lync Web サービスで認証を機能させる (サポートされている!) 方法を探しています。

これは可能ですか? どうやって?

答え1

苦労の末、ARR を介して Kerberos 認証を機能させる方法は見つかりませんでした。回避策として、ドメインから ARR サーバーを削除しました。これにより、Kerberos 認証が完全にスキップされ、すべてが即座に機能し始めました。

この回答によって問題が解決し、ARR を使用して Lync の内部 Web サービスの負荷分散が可能になったため、この回答を受け入れますが、実際に Kerberos 認証を機能させることができる回答を誰かが思いついた場合は、喜んで受け入れます。

答え2

Kerberos では、ARR サーバーからの要求 URL に対して、lync を実行しているサービス アカウントの SPN を設定する必要があります。次のようなコマンドを使用して、サーバー名と内部 FQDN の両方に SPN を設定する必要があります。

setspn -S http/<servername> domain.com\<Svc_Acct>
setspn -S http/<servername>.domain.com domain.com\<Svc_Acct>

SPNの非常に良い要約は以下にあります。ここ

さらに、委任に対して信頼されるように、ARR サーバーの Active Directory プロパティを変更する必要があります。これは、AD ユーザーとコンピューターの ARR サーバー オブジェクトのプロパティから設定されます。[委任] タブで、[任意のサービスへの委任に対してこのコンピューターを信頼する (Kerberos のみ)] ラジオ ボタンをオンにします。

委任に関する議論は以下を参照。ここ

関連情報