
IIS の認証を正しく構成するのに苦労しています。IIS 6.0 で実行されている SharePoint サイトがあり、IIS Web サイトは統合 Windows 認証用に構成されています。Web サーバーは というドメインにありSTAGING
、ほとんどのユーザーは という別のドメインにいますCORP
。CORP
ユーザーはドメイン アカウントを持っておりSTAGING
、ドメインを越えて SharePoint サイトにログインできます (たとえば、ユーザーはCORP
ワークステーションにログインしていて、サイトにログインできます)。ただし、STAGING
ドメイン ユーザーはドメイン内からログインできませんSTAGING
。ドメイン ユーザーは資格情報の入力を求められることなくサイトにアクセスできるはずだと理解していましたがSTAGING
、そうではありません。それでも、資格情報を入力すると、結果は常に 401 になります。
Fiddler で HTTP セッションを確認したところ、サーバーがクライアント ブラウザーから送信されたネゴシエートされた資格情報を受け入れていないようです。以下に短縮された記録を示します。
HTTP GET server /sites/mysite with headers: { }
--> 401.2, with headers: { WWW-Authenticate: Negotiate, WWW-Authenticate: NTLM }
HTTP GET server /sites/mysite with headers: { Authorization: Negotiate <digest1> }
--> 401.1, with headers: { WWW-Authenticate: Negotiate <digest2> }
HTTP GET server /sites/mysite with headers: { Authorization: Negotiate <digest3> }
--> 401.1, with headers: { WWW-Authenticate: Negotiate <digest4> }
GET/401.1 サイクルは、ブラウザが最終的に諦めるまで 3 回繰り返されます。
すべてが正しく構成されていれば、ドメイン内のクライアントが資格情報を渡すだけで問題は解決するはずですが、実際にはそうではなく、問題があります :-(
何か提案はありますか?
答え1
401.2 は通常、IIS が使用しようとしている認証の種類をサポートしていないことを意味します。Windows 統合認証が有効になっていることを確認してください。
ステージング マシンの IIS 設定を確認します - セキュリティ設定のユーザー認証/ログオン設定 (SharePoint サイトがあるゾーン) は、「現在のユーザー名とパスワードで自動的にログオンする」に設定されている必要があります - または、SharePoint サイトがイントラネット ゾーンにある場合は、「イントラネット ゾーンでのみ自動的にログオンする」を使用できます。
チェックアウト認証診断- 認証エラーの診断を支援するために構築されています。