NT Authority \ SystemのセキュリティコンテキストでWindowsサービスとして実行されるサービスがいくつかあります(サービスはNetTCPベースです)。Active Directoryには、次のサービスへのアクセスを許可される6つのグループが格納されています。
ユーザーエージェント承認者管理者(3つのレベルの管理者)
ServiceSecurityContext.Current.WindowsIdentity.Nameを使用してサービスに接続しているユーザーを取得できることはわかっています。
私がする必要があるのは、渡されたユーザーコンテキストが特定のサービスにアクセスできることをビジネスレイヤーで検証することです。また、プリンシパルパーミッションを使用して役割を渡して使用する、会社がサポートする古いアプリケーションに従うようにします。アクセスを確保するためのDemand()メソッド。
私の最初の質問は、PrincipalPermissionにServiceSecurityContextユーザー名と関連するロール(グループ)を渡すと、サービスが同じドメインのADアカウントのコンテキストで実行されているため、バックグラウンドでActive Directoryにアクセスすることを自動的に認識しますか?それとも私がすべき特別なことはありますか?