Webアプリケーションでの接続文字列の処理に関する推奨事項、ベストプラクティス、およびやるべきことは何ですか?絶対にしてはいけないことはありますか?
最適なオプション:データベースにパスワードを使用せず、可能な場合は(Windows)統合認証を使用します。もちろん、データベースに対して許可されているアプリケーションのIDを分離します。このようにして、OS/Webサーバー/ SCMに非常に安全な方法でIDを管理させます。
[〜#〜] i [〜#〜]統合された方法[〜#〜] w [〜#〜] indows [〜#〜] a [〜#〜]認証(IWA)、できればDPAPIなどを使用して接続文字列を安全に暗号化し(暗号化キーを管理する必要がないため)、強力なACLを持つ保護されたレジストリキーの暗号化された値。
ASP.NETを使用している場合(コメントではなくOPから)、これを自動的に実行する組み込みツールがあります(バージョンに応じてaspnet_setreg、aspnet_regiisなど...)
してはいけないこと
あなたがすべきこと。
接続文字列をWebサイトのルートディレクトリの外に保存することをお勧めします。
ASP.NETを使用している場合、web.configファイルはWebサイトのルートディレクトリにありますが、 web.configファイルのセクションを暗号化する Data Protection APIを使用して、安全に復号化キー。
Webアプリケーションにどのフレームワークを使用していますか?
オプションとして、 アプリケーションロールを使用してSQLサーバーにアクセスしてみてください
利点: