プロバイダー「RsaProtectedCo nfigurationProvider」を使用してセクション「connectionStrings」を暗号化できませんでした。プロバイダーからのエラーメッセージ:オブジェクトは既に存在します。
私は http://msdn.Microsoft.com/en-us/library/2w117ede.aspx のガイドに従いましたが、RSAキーコンテナーへのASP.NET IDアクセスを許可するには、ステップ3で、私のアイデンティティはworkgroup\usernameであると言っていますが、web.configファイルに偽装はしていません
私のマシンでasp_regiisを使用してweb.configを暗号化してから、Visual Studioを使用してデバッグすると、このエラーが発生しました
RsaProtectedConfigurationProviderを使用するには、コマンドプロンプトまたはVisual Studio 管理者としてを起動する必要があります。
DataProtectionConfigurationProviderの場合、管理者権限で実行する必要はありません。
RsaProtectedConfigurationProviderを使用して独自のプロバイダーを作成し、管理者権限なしでweb.xmlを暗号化できます。
キーストアを作成します。
aspnet_regiis -pc "MyKeyStore" -exp
すべてのユーザーに読み取りアクセスを許可します。
aspnet_regiis -pa "MyKeyStore" "Domain/User"
プロバイダーセクションをweb.configに配置する
<configProtectedData>
<providers>
<add name="MyRSAProvider" type="System.Configuration.RsaProtectedConfigurationProvider,System.Configuration, Version=2.0.0.0, Culture=neutral,PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"keyContainerName="MyKeyStore"useMachineContainer="true" />
</providers>
</configProtectedData>
構成セクションを暗号化します。
aspnet_regiis -pef "configSection" "c:\ pathToWebConf" -prov "MyRSAProvider"
出典:
これは、サーバー全体でWebアプリをCドライブから別のドライブに移動しようとしたときに発生しました。
ドライブCのweb.configセクションを暗号化して別のドライブに移動したため、プロバイダーが妨害され、セクションが既に存在すると信じているため、セクションの暗号化に失敗しました。
私はまだそれを修正しようとしています。