WCF (Windows Communication Foundation) クライアントとサービス アプリケーションがあります。Kerberos で Windows 認証を使用しています。
問題は、サービスが多数のアカウント (ネットワーク サービス、特定のユーザー アカウントなど、IT グループによって異なります) のいずれかで実行される可能性があることです。このアカウントは毎日変更される可能性は低いですが、場合によっては (数か月ごとに) 変更される可能性があります。さらに、このクライアント/サービス パッケージを複数のグループに提供します。各グループは、サービスを実行するために使用する独自のアカウントを持っている場合があります (これは、1 つのチームに対してカスタム ソリューションを実行できないことをお知らせするためのものです)。 )。
上記の段落が問題である理由は、サービスが SYSTEM または NETWORK SERVICE アカウント、つまりユーザー アカウントで実行されていない場合、クライアントはそのエンドポイントの ID でユーザー アカウントの名前を指定する必要があるためです。
この制限の詳細については、http: //social.msdn.microsoft.com/Forums/en-US/wcf/thread/feb6bc31-9a4b-4f8d-a887-ef6d2c7abe41 およびhttp://www.vistax64.com/indigoを参照してください。 /146204-using-localhost-vs-environment-machinename.html
これにより、IT 部門がサービスを実行するアカウントを変更する状況に対処することが難しくなっているようです。ある場合、これを処理するためのパターンは何ですか? 他の人々はこれをどのように処理しましたか? 私が考えた 1 つの解決策は、サービスのユーザー アカウントが変更されたときに管理者がメールを送信することです。これには、クライアントまたは構成ファイルを更新するアプリケーションへの Web リンクが含まれているため、クライアントは新しいユーザー アカウントを参照します。 . しかし、それはハックのようです。
確かに、これは移動するエンドポイントの URI によく似ています。例外として、URI の変更はクライアントが知っておくべきことであるが、サービスが実行されているアカウントの変更は、クライアントに対して比較的透過的であるべきものであるという人々に代わって、より多くの期待があると思います。
ところで、これが重要な場合は、IIS 7.0 でホストする必要があります。