2011-07-08 5 views
1

web.configで接続文字列を暗号化/復号化するために.netで提供されている暗号化メカニズムを使用していますが、IISマネージャー5.1(win-Xp)IISマネージャー5.1の接続文字列を隠す

IISマネージャーで、自分のWebサイトのプロパティに入ると、[ASP.NET]タブの[構成の編集]ボタンをクリックすると、接続文字列がプレーンテキストで表示されます。どのように私はこの接続文字列を非表示/暗号化するので、どのユーザー/管理者も見ることができません。

これは必須なので、言い訳をすることはできません。それは不可能ではないと思いますが、少なくとも回避策が必要です。

+0

回避策は、接続文字列をweb.configに保存し、暗号化して保存することです。しかし、私はそれを試みたことがないと確信していません。 –

+0

Davideに感謝します。しかし、私はすでに** aspnet_regiis.exe -pe "connectionStrings" -app "/ DemoApplication" **コマンドを使用して接続文字列を暗号化していますが、これまでIISマネージャーで見ることができます。 – Bravo

+0

申し訳ありませんが、あなたはそれが別のユーザーとどのようにログインしているのですか? –

答えて

1

.Net接続文字列の暗号化メカニズムの目的は、構成ファイルのコピーを入手した攻撃者からの保護ですが、実際にはコンピュータ自体にアクセスできません。なぜ接続文字列がプレーンテキストで表示されるのかこの管理コンソールは、コンソールにアクセスできれば、他の手段で同じ情報に完全にアクセスすることができるからです。

「暗号化」とは「難読化」を意味するので、接続文字列を非表示にして管理者がすぐに見ることができないことを確認してください.Netメカニズムを無視し、接続文字列を暗号化/復号化します。これは、しかし、適切に動機付けられた管理者がこの接続文字列を見るのを妨げることはありません。

実際にデータベース接続(おそらくユーザー名/パスワードの使用)を保護したい場合は、代わりに統合SSPIセキュリティを使用する必要があります。

+0

Kragenに感謝します。私が進めているプロジェクトは現在メンテナンスフェーズの下にあり、プロジェクト全体でデータベース接続のためのMicrosoftのコードプラクティスを使用しています。これは設定ファイルから接続文字列を受け取ります。カスタム暗号化メカニズムを使用してください。また、セキュリティを重視するクライアントが当社のシステムを使用しているため、SSPIの使用も適切なソリューションではありません。 – Bravo

+1

@Bravo SSPIは、SQL認証よりも安全性が高いと一般に考えられています。「統合セキュリティ(SSPI)を使用してSQL ServerをWebアプリケーションに適して使用していますか? (ServerFault)](http://serverfault.com/questions/13292/is-using-integrated-security-sspi-for-accessing-sql-server-better-for-web-appli) – Justin