6

SOAP を使用して Web サービスに接続する Web ページを開発しています。Web サービスでメソッドを呼び出すと、次のエラーが発生します。

要求は中止されました: SSL/TLS セキュア チャネルを作成できませんでした。そのため、コード行を追加しました。

ServicePointManager.Expect100Continue = true;
ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

サーバーに信頼として保存された証明書があり、証明書が保存され、通過できるようにホワイトリストに登録されています。認証しようとすると、次のメッセージが表示されます。

System.Net.WebException: The underlying connection was closed: An unexpected error occurred on a receive. ---> System.ComponentModel.Win32Exception: The client and server cannot communicate, because they do not possess a common algorithm

トレースをセットアップしました。トレース ファイルは次のようになります。ここからどこへ行くべきかわからないところまで来ました。どんな助けでも大歓迎です。

[Public Key]
  Algorithm: RSA
  Length: 2048
  Key Blob: 30 82 01 0a 02 82 01 01 00 ce 08 11 55 52 0c 94 64 dc fe 1b e6 37 2e 1c 7a f1 3c 5d 24 67 d7 8e 76 58 78 64 30 d8 7d a3 e7 f2 0a c1 6b 33 91 7f 21 e6 a3 46 32 91 95 05 c6 46 05 43 ac 84 79 32 d5 ab 0f 0b 38 d1 9f 18 ab c3 82 dd 9d 98 ab 00 17 17 60 c0 c6 df 98 32 66 22 39 7b f5 fb e2 ed e2 a5 20 a7 48 0e 1b c6 43 2c 5b 81 85 69 2b 02 1e 40 77 9c 90 ea 25 81 f1 49 4d ed dd ....
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] SecureChannel#42430754 - Certificate is of type X509Certificate2 and contains the private key.
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] AcquireCredentialsHandle(package = Microsoft Unified Security Protocol Provider, intent  = Outbound, scc     = System.Net.SecureCredential)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] AcquireCredentialsHandle() failed with error 0X80090331.
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] AcquireCredentialsHandle(package = Microsoft Unified Security Protocol Provider, intent  = Outbound, scc     = System.Net.SecureCredential)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] AcquireCredentialsHandle() failed with error 0X80090331.
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net.Sockets Verbose: 0 : [6072] Socket#14502061::Dispose()
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] Exception in the HttpWebRequest#11181865:: - The underlying connection was closed: An unexpected error occurred on a receive.
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Error: 0 : [6072] Exception in the HttpWebRequest#11181865::GetResponse - The underlying connection was closed: An unexpected error occurred on a receive.
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.2747506Z
System.Net Information: 0 : [6072] Enumerating security packages:
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072]     Negotiate
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072]     NegoExtender
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6335529Z
System.Net Information: 0 : [6072]     Kerberos
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     NTLM
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     Schannel
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     Microsoft Unified Security Protocol Provider
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     WDigest
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     TSSSP
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     pku2u
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072]     CREDSSP
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] AcquireDefaultCredential(package = Negotiate, intent  = Outbound)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = (null), targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=0, Out-Buffer length=125, returned code=ContinueNeeded).
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = 23570c30:235e9b58, targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=1, Out-Buffer length=121, returned code=ContinueNeeded).
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(credential = System.Net.SafeFreeCredential_SECURITY, context = 23570c30:235e9b58, targetName = host/localhost, inFlags = MutualAuth, Confidentiality, Connection, AcceptIntegrity)
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
System.Net Information: 0 : [6072] InitializeSecurityContext(In-Buffers count=1, Out-Buffer length=0, returned code=OK).
    ProcessId=3704
    DateTime=2013-01-30T20:51:25.6491530Z
4

1 に答える 1

5

Trustwaveから:

  1. サービスがインストールされているシステムで、[コントロール パネル]に移動します。
  2. [管理ツール]を選択し、次に[ローカル セキュリティ ポリシー] を選択します。
  3. [ローカル ポリシーセキュリティ オプション]に移動します。
  4. システム暗号化をダブルクリック: 暗号化、ハッシュ、および署名に FIPS 準拠のアルゴリズムを使用します。
  5. 設定を無効にし、[適用] をクリックします。
  6. IIS サービスを再起動します。
于 2013-01-31T16:46:57.097 に答える