2011-10-31 7 views
2

Windows認証となりすましを使用している一部のASP.NET MVC WebサイトでEntity Framework(4.1 Code First)を使用しています。Entity Frameworkで特定のADアカウントを使用する

問題は、SqlServerに特定のADアカウント(偽装されていないアカウント)で接続する必要があることです。どうすればEFでそれをすることができますか?

答えて

0

これは本当にEFとは関係ありませんconnecへのADO.NET ADO.NETは現在のアカウント(統合セキュリティ)またはSQLアカウント(btwです)のいずれかを使用します。あなたの問題に対するより明確な解決策)。

特別なアカウントを使用する必要がある場合、手動でアカウントを偽装する必要があります。実際には問題はほとんどありません。つまり、別のユーザーが偽装に必要なWindows IDを取得するために直接ログインする方法がないためです。 small P/Invoke to WinAPIを使用する必要があります。

+0

これは、EFが接続管理をラップするので、EFの問題です。偽装を使用できるようにするために何らかの方法でコネクションの作成に注入する必要があります。 – jgauffin

+0

@jgaufin:DbContextには、既存のコレクションを使用するコンストラクタのオーバーロードがあるため、簡単に挿入できます。 –

+0

それは私がそれが仕事の問題ではないことを気づかされたので答えとしてそれをマークします。私は、偽装に頼らない(本当に必要なときにp/invokeラッパークラスを使用する)ために、私たちのフレームワークの一部を記録しました。 – jgauffin

0

EF接続を手動で管理し、必要なアカウント/ログイン情報を手動で入力する必要がある場合は、

これを行う方法についていくつかの有用な情報:EFは、単に使用しているため

関連する問題