ドメイン ユーザー資格情報を渡すのではなく、サービス アカウントを使用して SQL サーバーに接続するようにアプリケーションを設定したいと考えています。パススルーでは、特定のユーザーにデータベースへの読み取り/書き込みアクセスを許可する必要がありますが、これはセキュリティ ホールと見なされます。
私の質問は、サービス アカウントの資格情報を使用して SQL サーバーへの接続を確立した場合、要求を発信した実際のユーザーを特定することは可能ですか? たとえば、ドメイン ユーザーのジョン スミスが Web サイトにアクセスし、何らかのアクションを実行します。データベースへの接続は、一部のサービス アカウントのセキュリティ資格情報を使用して確立されますが、johh smith の名前は引き続き SQL サーバーに渡されます。SQL は、この人の名前を何らかの方法で使用します。たとえば、監査テーブルに保存するなどです。
これはできますか?元のユーザーの名前を何らかの方法でSQLサーバーに取得する必要があることを考えると、それはベストプラクティスですか?