0

次の構成を使用して、Web アプリで Azure Web サイト (webrole ではない) にアップロードされた証明書を使用しようとしています。

<microsoft.identityModel>
<!-- Service Configuration -->
<service>
  <serviceCertificate>
    <certificateReference findValue="2696C50B72CB368AEB11DE3B23CD226252A1BFD" storeLocation="CurrentUser" storeName="My" x509FindType="FindByThumbprint"/>       
  </serviceCertificate>
  <certificateValidation certificateValidationMode="None"/>
</service>

コードはローカル システムで正常に動作します。しかし、Azure Web サイトにデプロイするとエラーが発生します。

ID1024 The configuration property value is not valid 
ID1025 Cannot find a unique certificate that matches the criteria

次に、Azure Web サイトのすべての証明書を (コードを使用して) 参照しようとしました。しかし、証明書リストにアップロードした証明書が含まれていません。

証明書がアップロードされ、Azure ポータルで表示できます。カスタム ドメインがマッピングされ、アップロードされた証明書がドメインに対して使用されます。しかし、どういうわけか私の Web アプリは証明書を見つけることができません。StoreName と StoreLocation の可能な組み合わせをすべて試しましたが、無駄でした。

4

1 に答える 1

0

Web サイトの [構成] タブを介してアップロードした証明書が何に使用されるかについて、混乱があるかもしれません。現在、そこにロードされた証明書は SSL にのみ使用されます。

構成タブの証明書セクションの横にある小さなヘルプ アイコンを見ると、ツールチップには次のように表示されます。

"このセクションでは、カスタム ドメイン名にバインドできる SSL 証明書を管理できます。SSL 証明書をカスタム ドメイン名にバインドすると、エンド ユーザーは HTTPS 経由でサイトにアクセスできるようになります。 "

Windows Azure Web サイトはプロセス レベルで存在します。つまり、1 台のマシンで起動しても、プロセスの上下に合わせて移動できます。これに慣れていない場合は、ホスティング モデルが Web サイトでどのように機能するかを読んでおくことをお勧めします。Windows Azure Web サイト - Windows Azure の新しいホスティング モデル(完全開示: 私が記事を書きました) 。

ここで証明書をロードすると、Web サイトが実行されているマシンのストアに証明書が追加されるとは思えません。Windows Azure では、サイトが展開されているマシン上に証明書が常に存在することを確認する必要があります。これはプロセス レベルでのみ行われ、(標準を使用していない限り) 頻繁に変更される可能性があるため、意味がありません。SSL証明書は異なる方法で処理され、私が知る限り、実際には各マシンに展開されていません.

私の知る限り、証明書をロードして使用するには、ポータルからロードされた証明書が VM のストアに配置されている Web ロールを確認するか、証明書をロードできるかどうかを確認する必要があります。コードで証明書を手動で作成し、サイトのコンテンツとして証明書を出荷します (これは私には少し安全性が低いようです)。ただし、オプションを見落としている可能性があります。

于 2013-10-09T12:20:57.197 に答える