6

暗号化に問題があります。すべてのユーザーにRSAフォルダーへの完全なアクセス許可を与えました。やった

C:\>aspnet_regiis -pe "appSettings" -location "web.config" -prov "RsaProtectedCo
nfigurationProvider"
Encrypting configuration section...
An error occurred executing the configuration section handler for appSettings.

Failed to encrypt the section 'appSettings' using provider 'RsaProtectedConfigur
ationProvider'. Error message from the provider: Object already exists.

Failed!

それから私はしました

C:\>aspnet_regiis -pa "NetFrameworkConfigurationKey" "administrator"
Adding ACL for access to the RSA Key container...
The RSA key container was not found.
Failed!

に続く

C:\>aspnet_regiis -pc "NetFrameworkConfigurationKey" -exp
Creating RSA Key container...
The RSA key container could not be opened.
Failed!

私には何も機能していません。

誰か助けてもらえますか?

ありがとう

4

4 に答える 4

9

私はこの失敗で同じ問題を抱えていました:

aspnet_regiis -pa "NetFrameworkConfigurationKey" "{ドメイン}{ユーザー名}"

上記の行は、「RSA キー コンテナーが見つかりませんでした」を返していました。

この問題を解決するには、コマンド プロンプトを管理者として実行する必要がありました ([スタート] > [アクセサリ] を開き、[コマンド プロンプト] を右クリックして [管理者として実行...] を選択します)。私のアカウントは管理者アカウントでしたが、これを行う必要がありました。

于 2011-03-09T17:04:05.930 に答える
1
C:\>aspnet_regiis -pe "appSettings" -location "web.config"
       -prov "RsaProtectedConfigurationProvider"

この行では、あなたの場所が正しくありません。スイッチの場所を使用する場合、-pdIIS のアプリケーション パスに基づいており、web.config が暗号化のポイントと見なされます。

たとえば、IIS に "Website 1" という名前のアプリケーションと "Website 2" という名前の別のアプリケーションがあり、"Website 1" の web.config を暗号化する場合は、次の行を使用します。

C:\>aspnet_regiis -pe "appSettings" -location "Website 1"
        -prov "RsaProtectedConfigurationProvider"

-pef個人的には、Web アプリの物理ディレクトリを直接指定できるため、スイッチを使用する方が簡単であることがわかりました。

Encrypting Configuration Information Using Protected Configurationに関する MSDN のチュートリアルに従ってください。私はそれを何度も使用しましたが、まだ暗号化に問題はありません。

于 2010-01-05T17:25:07.890 に答える
1

「管理者」を、ASP.NET サービスを実行しているアカウントに変更する必要があります。おそらく、ASP.NET を管理者サービス アカウントとして実行していないからです。もしそうなら、あなたはあなたの決定を再考する必要があります.

たとえば、私が使用しているものは次のとおりです。

 aspnet_regiis -pa "NetFrameworkConfigurationKey" "NT Authority\Network Service"

また

aspnet_regiis -pa "NetFrameworkConfigurationKey" "ASPNET"

次に、暗号化のために次を使用します。

  aspnet_regiis -pef "connectionStrings"

また

 aspnet_regiis -pef "appSettings"
于 2010-01-05T17:26:07.450 に答える
0

上記のコマンドのエラーが消える前に、証明書がインストールされているフォルダーを見つけて所有権を取得し、アクセス許可を与える必要がありました。エラーは、キー コンテナーが見つからないことを示していましたが、実際には証明書へのアクセス許可がなかっただけです。私の場合、開発マシンを他の人から譲り受けたので、必要なコマンドを実行する前にファイルへのアクセス許可を自分自身に与える必要がありました。

証明書フォルダーの場所、詳細な手順など、より詳細な回答をしたいと思っていましたが、時間がなく、シナリオで何をしなければならなかったかを書き留めたかっただけです。

于 2012-10-26T21:54:52.257 に答える