2012-02-23 10 views
4

開発者が自分のマシンでRSAProtectedConfigurationProviderを使用して接続文字列app.configセクションを暗号化した後、これをユーザーのワークステーションに展開すると、その問題)、自動的に接続文字列を復号化する?app.config内でRSAProtectedConfigurationProvider経由で暗号化された接続文字列を展開する

主要なエクスポート/インストールは必要でしょうか?これはどのように作動しますか? 私はそれが防弾ではないことを認識します。デプロイメントが簡単かどうか、暗号化された接続文字列を使用するかどうかについてアドバイスを探しています。

答えて

7

可能です。そこにそれを行うためのAPIは(System.Security.Cryptography名前空間を見て)している、またはコマンドラインから、あなたはます。aspnet_regiisを使用することができます。

もちろん
aspnet_regiis -pc -exp : create an exportable key pair 
aspnet_regiis -px : export an RSA key pair to an XML file 
aspnet_regiis -pi : import an RSA key pair from an XML file 
aspnet_regiis -pa : add access for an account to a key container 

、暗号化を使用した場合、あなたは単にあなたの接続(データの保護の問題を代入しています文字列)にキーを保護するという問題があります。

あなたの例では、防弾ではないことを認識しているので、ユーザーはキーコンテナにアクセスする必要があり、暗号化された接続文字列を復号化できるようになります。

また、エクスポートされたキーペアを含むXMLファイルを保持するすべての人がそうすることができます。展開手順のようなものだろう

UPDATE

  • は、開発者のワークステーションにエクスポート可能キーを作成します(-pcます。aspnet_regiis -exp)
  • 開発者の構成セクションを暗号化このキーを使用するワークステーション
  • XMLファイルにキーをエクスポートします(aspnet_regiis -px)
  • は、ターゲットマシン
  • インポートターゲットマシン上のXMLファイルからキー(ます。aspnet_regiis -pi)
  • は、ユーザーアカウントがターゲットマシン上のキーへの読み取りアクセス(ます。aspnet_regiis -pa)
  • を与えるために、XMLファイルをコピーします。

保護設定プロバイダ(RSAProtectedConfigurationProviderなど)を使用して暗号化されたセクションは、アプリケーションが実行されているWindows IDにRSAキーコンテナの読み取り権限がある場合、自動的に復号化されます。

+0

ありがとうございます。このキーコンテナについて詳しく説明できますか?これは私が知る必要があるものです - これは開発者のワークステーションからターゲットマシンにどのように配備されていますか?ターゲットマシンはこれを自動的にどのように復号化できますか? –

+0

@PittsburghDBA - 更新を参照してください。 – Joe

+0

ありがとうございました。 –

関連する問題