2011-12-06 9 views
0

後でWebサーバーでHttpHandlerとして機能する「クラスライブラリプロジェクト」があります。だから、私はローカルに2つのファイルapp.config(それはdllであるため、ローカルのdev用)とweb.config(リモートWebサーバー用)です。HttpHandlerの設定ファイルを暗号化します

これで設定ファイルを暗号化したかったのです。すべてが暗号化され、リモートWebサーバーにインポートされました。しかし、ハンドラは動作しません。エラーが表示されます。"Failed to decrypt using provider 'My_Provider'. Error message from the provider: The RSA key container could not be opened."

私の開発PCではすべて正常に動作します。なにが問題ですか?

だから、この私の輸出は

cd %windir%\Microsoft.NET\Framework\v4.0.30319

aspnet_regiis -pc "My_Keys" -exp

aspnet_regiis -pa "My_Keys" "IIS APPPOOL\CustomAppPool"

aspnet_regiis -pef "connectionStrings" "HandlerProjectPath" -prov "My_Provider"

aspnet_regiis -px "MyKeys" "HandlerProjectPath\MyKeys.xml" -pri

pause

これらはインポートステップ

%windir%\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis -pi "My_Keys" "MyKeys.xml"

pause

P.S.あるステップ私のハンドラは、 "CustomAppPool"という名前のカスタムAppPool内のIIS 7で動作します。私は特に自分のPCにアプリプール名を作成しました。

これは事前に私のCONFIGDATA

Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a,
processorArchitecture=MSIL"

 keyContainerName="My_Keys" 
     useMachineContainer="true" /> 
</providers> </configProtectedData> 

感謝です!

答えて

1

キーペアをインポートした後、AppPoolに割り当てられたIIS IDにコンテナへのアクセスを許可する必要があると思います。

+0

はい、助けになりました。ありがとう! – user970742

関連する問題