0

以下のリンクの手順を使用して、web.configファイルの接続文字列を暗号化しました:http: //www.codeproject.com/KB/database/WebFarmConnStringsNet20.aspx

ただし、アプリケーションを呼び出すと、次のエラーが発生します。

プロバイダー'CustomProvider'を使用した復号化に失敗しました。プロバイダーからのエラーメッセージ:RSAキーコンテナを開くことができませんでした。

暗号化を実行するサーバーは、64ビットのWindows Server 2003R2SP2です。そのため、ACLをに割り当てNT Authority\Network Serviceます。それでも、それはまだ機能しません。

誰かがこれを機能させるために他に何をチェックする必要があるかについていくつかのアイデアを持っていることを願っています。

PS。暗号化にデフォルトのrsaキーを使用した場合NetFrameworkConfigurationKey、接続文字列にアクセスの問題は発生しません。

4

2 に答える 2

1

さて、私は問題の原因を見つけました。属性 keyContainerName で、名前のスペルが間違っていました。

そのこと。それが問題の原因です。

どうやら、間違った keyContainerName を指定しても暗号化は機能しますが、これは失敗すると誤って想定していました。そのため、接続文字列を復号化し、正しい keyContainerName で再暗号化すると、正常に機能します。

ところで、keyContainerName を修正する前に、必ず既存の接続文字列を復号化してください。プロバイダーが異なるため、aspnet_regiis.exe は不正なデータについて警告します。

于 2008-09-21T09:16:59.820 に答える
0

を追加することを忘れましたか

<configProtectedData>

あなたのweb.configに?

于 2008-09-20T10:59:05.150 に答える