0

フレームワーク 2.0 で実行され、IIS 6 サーバーでホストされている Web asp.net アプリケーションがあり、OS は Windows サーバー 2003 です。Web アプリケーションは、Web サービスによって認証されるクライアント証明書を訴えています。ユーザー「ネットワークサービス」でアプリケーションプールを非個人化しました。

問題は、マシン キー/マイ ストレージに格納されている証明書の秘密キーにアクセスする必要がある場合です。ユーザー Network Service はキーにアクセスできません。

winhttpcertcfg.exe ツールを使用して Network Service ユーザーに権限を付与しましたが、結果は同じです。

ローカル管理者でアプリケーション プールを非個人化すると、結果は正常になります。したがって、問題はユーザーの権限にあると考えています。

誰かが私たちにいくつかの情報を与えることができれば、私たちは感謝しています.

前もって感謝します

4

2 に答える 2

2

最終的には、多くの失敗した結果の後、問題を解決する必要がありましたが、最終的には各問題には独自の解決策があります。

私たちのソリューションは、ローカル マシンの管理者アカウントを作成することで構成されています。その後、このアカウントでログオンし、MMC /s コマンドを実行します。LOCAL_MACHINE/My store に証明書をインポートします。

2 番目の部分は、管理者グループからユーザーを削除することです。作成したユーザーで ASP.NET 2.0 アプリケーションのサービス アカウントを作成します。これについては、次の URL http://msdn.microsoft.com/en-で詳しく説明されています。 us/library/ms998297.aspx .

幸運を。

于 2010-05-12T10:00:43.573 に答える
1

私にとっては、このソリューションのみが機能します (IIS 6、Win 2003 Srv) が、1 つの問題があります... 私の特別なアカウントは、その前にアプリケーションをその権利で起動した場合にのみ、ASP.NET アプリケーションから証明書を読み取ることができます ("Run as ...")。このアクションがないと、必要な証明書を使用して http-request (WinHttpRequest) を送信しようとすると、セキュリティ エラーが発生します。

于 2012-03-26T04:18:05.643 に答える