2017-12-21 18 views
0

私はサードパーティの会社からデータを取得しています。これをローカルに設定するときは、.cerと.pfxを証明書ストアにインストールした後に動作します。Azureの公開証明書と秘密証明書はWebアプリケーションからアクセスできません

Could not establish trust relationship for the SSL/TLS secure channel with authority 

私は公共のルート証明書に自分のアプリケーションプールへのアクセスを与える前に最初に局所的に、この特定のエラーを受け取りました:しかし、私は、コードが私AzureのWebアプリケーション上で実行されるとき、それはエラーになり、それが仕事を得ることができません(IIS AppPool \ AppPoolName)。 Azureで同じエラーが発生しているように感じます。コードは証明書を見つけ出します(そうでなければエラーがスローされます)が、その証明書を使用するアクセス権がないようです。 enter image description here

これは私が使用しているコードは次のとおりです。私はすべての本命をインポートするアプリケーションのプロパティを設定したhttps://azure.microsoft.com/en-us/blog/using-certificates-in-azure-websites-applications/

私は私のウェブアプリで証明書をインストールするには、このガイドに従ってきました

var store = new X509Store(StoreName.My, StoreLocation.CurrentUser); 
store.Open(OpenFlags.ReadOnly); 
var certs = store.Certificates.Find(X509FindType.FindByThumbprint, thumbprint, false); 

if (certs == null || certs.Count == 0) 
{ 
    ExceptionUtils.ThrowDataError("Private certificate could not be found"); 
} 

store.Close(); 
return certs[0]; 

私もApp_Dataフォルダに.PFXを追加し、このようにそれをロードしようとしました::

プライベート証明書をロードします
var certPath = HttpContext.Current.Server.MapPath("~/App_Data/cert.pfx"); 
var bankIdCert = new X509Certificate2(certPath, "password"); 

しかし、同じエラーが発生します。おそらく、公開証明書へのアクセス権が与えられていないことを意味しますか?作業ローカルバージョンと紺碧のバージョン間の今唯一の違いは次のとおりです。ローカル

  • 、パブリック証明書は、店舗LOCALMACHINE場所ルートであると私
  • Azureのオン
  • アップロードし、両方の本命が行く店LOCALMACHINEの場所にあるプライベートto CurrentUserMy

LocalMachineを使用して作業する必要がある証明書がありますか?

答えて

0

Could not establish trust relationship for the SSL/TLS secure channel with authority

、SSL証明書の検証のための最もな理由は、失敗することです:

The hostname used in the URL doesn't match the name that's on certificate. Make sure the URL you're using and the URL on the 'Issued to' field of the certificate are the same.

Swikrutiボーズは、カスタムSSLにBind an existing custom SSLを、次のことができると述べたように。

azure WebAppがsandboxであるため、Azure WebAppにルートCAをインストールするアクセス権がありません。

Azure仮想マシンまたはCloud Serviceが可能な場合は、Azure仮想マシンまたはcloud Serviceも使用できます。

関連する問題