1

IPの理由から、Webサイトをサービスアカウントとして実行する必要があります。また、ユーザーの認証/認証にAzManを使用できるようにしたいです。どういうわけか、これらを一緒に機能させることができないようです。基本的にいくつかのユーザー資格情報を吐き出す水域をテストするためのサンプルアプリを設定しました。AzmanとWeb構成のセットアップを除いて、アプリには統合コードがありません(logging / DB / Websericeの相互作用はありません)。これは1ページのポケットベルです。

Anonアクセスが拒否されたネットワークサービスアカウントでアプリプールを実行すると、次のようになります。

Windows Identity Check - Name: 'NT AUTHORITY\NETWORK SERVICE'  
Request.LogonUserIdentity.Name = 'CT\rhyc'  
HttpContext.User.Identity.Name = 'CT\rhyc'  
User.Identity.Name = 'CT\rhyc'  
Is in UserRole = 'True'  

..これはすべて問題ありません。すべてが機能していますが、サービスアカウントはネットワークサービスであり、使用するはずのサービスアカウントではありません。アカウントをサービスアカウントに切り替えると、ユーザーの資格情報を要求するポップアップウィンドウが表示されます(これは不要です。シングルサインオンである必要があります)。ただし、以前の設定(ct / rhyc)でこれらのクレデンシャルが渡されていました

Webサイトに対してsetspnコマンドが実行されたようですが(どうやら)、spnが何をするのか、ましてやチェック方法はわかりません。また、サービスアカウントを実行しているアプリプールで匿名アクセスを許可すると、次のようになります。

Windows Identity Check - Name: 'CT\SVC-PERAT2-T2DEV'  
Request.LogonUserIdentity.Name = 'PERAT2NTAH3WD1\CVX_IUSR'  
HttpContext.User.Identity.Name = ''  
User.Identity.Name = ''  
Is in UserRole = 'False' 

申し訳ありませんが、私はIIS n00bです。通常は私が行うことではありませんが、管理者はIISについてあまり知らないようですので、私に任せています。

4

2 に答える 2

1

SPN を使用すると、Kerberos の世界に入ります。これは通常、未知の領域です。

これに関するセキュリティのトラブルシューティングについて説明した優れたホワイト ペーパーがあり ます。

認証の問題の根本にたどり着くために、より多くのロギングを有効にする方法について説明します。通常、Exchange での委任がユーザーの資格情報を渡すように設定されていないことが原因です。

詳細はこちら: http://support.microsoft.com/kb/262177

于 2009-08-20T03:21:54.610 に答える
0

わかりました。間違ったツリーを鳴らしていたようです。Kerbros は決​​して必要ではありませんでした。NTLM のみに変更しましたが、すべて問題ありません。

cmd 以下の
cscript adsutil.vbs set w3svc/1152622725/root/NTAuthenticationProviders "NTLM"

1152622725 は Web サイト ID です

助けてくれてありがとう、学んだ教訓: kerbros で f__k しないでください。

于 2009-08-20T09:28:01.707 に答える