本番データベースへのアクセスを確保し、監査する必要がある場合は、Windows認証は、多くの理由からSQL認証よりも良い選択です:
あなたがNTを介してデータベースにアクセスできるユーザーを厳密に制御することができますグループとパーミッションが含まれています。つまり、特にデータベースにアクセスできるユーザーが分かります。 SQL認証によるアクセスのプールは、パスワードを知っている人だけが制限します。パスワードを知っているn人の人を考えると、ある時点で誰が何をしたのかを追跡することは、それを考慮すると、より難しい(しかし、不可能ではない)。
システム管理者のみがデータベースにアクセスできるNT IDのパスワードを知っている必要があります。実際には多くの設定はユーザ名のみを知ることしかできません
ログインとアクセスは、SQL Serverログインよりはるかに簡単にドメインレベルで追跡できます。
何それは文句を言わないあなたを与えることである:開発者が本番データを見ることができないことを確実にする
能力 - 簡単にデータ
を選択するために、いくつかの診断ルーチンを含むことができ、アプリを書き込み、誰が
実動データのみを実稼働状態に保つようにします。実働データベースのバックアップを作成する(テスト用にUAT環境に復元する)と、実動データが簡単に公開される可能性があります。
このアプローチの問題は、すでに他の記事で議論されています。特にASP.Netアプリケーションでは、偽装/委任(WebサーバーがNTユーザーとしてアクセスできるようにする)か、信頼できるユーザーモデル(特定のユーザーにアクセスする固定IDを構成する)を使用するかどうかを検討する必要がありますリソース)。
これは、使用しているIISバージョンによってさらに複雑になります。
Sarboxという言葉では、開発者のアクセスを制限する以外に選択肢はありません。 –
[Sarbanes-Oxley Act](http://en.wikipedia.org/wiki/Sarbanes-Oxley_Act)?どのようにして、あなたは開発者を制限するが、システム管理者のアクセス権を制限しないだろうか? – Andomar
それは懸念の分離を強要します。開発者はデータベースへの管理アクセス権を持ちませんし、自分自身のコードを展開することもできません。少なくともErnst&Youngによると。 –