1

WCF を使用した認証に基本証明書とクライアント証明書を必要とする Web サービス エンドポイントと統合しようとしています。オンラインの提案に基づいてさまざまな設定を試しましたが、それでも「認証局 XXXXX で SSL/TLS の安全なチャネルを確立できませんでした」というメッセージが表示されます。サーバーは、Windows 証明書ストアで既に利用可能な既知の CA を使用します。コードでは、 ClientCredentials.UserName.UserName 、 ClientCredentials.UserName.Password および ClientCredentials.ClientCertificate.Certificate を正常に追加しています。

1)

<security mode="TransportWithMessageCredential">
     <transport clientCredentialType="Basic"/>
 </security>

結果 : 「権限 XXXXX で SSL/TLS の安全なチャネルを確立できませんでした」

2)

<security mode="TransportWithMessageCredential">
     <transport clientCredentialType="Basic" />
     <message clientCredentialType="Certificate" />
 </security>

結果: 結果: 「認証局 XXXXX で SSL/TLS の安全なチャネルを確立できませんでした」

3)

<security mode="Transport">
            <transport clientCredentialType="Certificate"/>
             <message clientCredentialType="UserName" />
  </security>

結果 : HTTP 要求は、クライアント認証方式「匿名」で許可されていません。サーバーから受信した認証ヘッダーは「Basic realm="Realm"」でした。---> System.Net.WebException: リモート サーバーがエラーを返しました: (401) Unauthorized.

clientCredentialType を「Certificate」に設定したときに返されるエラーに基づいてサーバーが基本認証を期待しているため、基本認証を使用してクライアント証明書を添付する方法。

注:SOAPUIを使用すると、サーバーに正常に接続できます

4

1 に答える 1