Windows 認証がオンになっているIIS 8でホストされているPython Flaskアプリがあります。
このIIS アプリのApplicationPoolには、 IdentityがCustom Accountに設定されています。たとえば、
super_usr
このアカウントには、アクセスしようとしているSQL Serverデータベースに対するSQL 承認があります。
特定のローカル ユーザーが Flask アプリケーションにアクセスしようとしているとします。
local_usr
Flask アプリは、次を使用してローカル ユーザーの名前を取得できます。
request.environ['REMOTE_USER']
PyODBC を使用してデータベースに接続する方法は、
TrustedConnection=yes
SQL 接続文字列の一部として。
DRIVER={SQL Server};SERVER=XYZ;PORT=123;Trusted_Connection=yes;
そのため、IIS にはサーバーを実行しているsuper_usrがあるため、PyODBCはlocal_usr ではなく、 super_usrのコンテキストで接続を開きます。
ここで、PyODBC がlocal_usrとして接続を開く方法を探しています。local_usrにパスワードを尋ねたり、Windows 認証をオンにしたりしたくありません。
これは、IIS アプリケーション プール [ super_usr ] で実行されているアカウントではなく、Windows 認証ユーザー [ local_usr ] に対して SQL 承認を取得するためのものです。
特定のアカウントをアプリケーション プール ID に渡す代わりに、SQL Server が同じボックス上にない場合に IIS で認証されたユーザーを承認する方法はありますか?
誰もこの問題に直面したことがありますか? はいの場合、これを回避するための理想的な方法は何ですか?
前もって感謝します。