Azure App Service で TLS/SSL 証明書を追加するAdd a TLS/SSL certificate in Azure App Service

Azure App Service は、非常にスケーラブルな、自己適用型の Web ホスティング サービスを提供します。Azure App Service provides a highly scalable, self-patching web hosting service. この記事では、App Service にプライベート証明書またはパブリック証明書を作成、アップロード、またはインポートする方法について説明します。This article shows you how to create, upload, or import a private certificate or a public certificate into App Service.

証明書が App Service アプリまたは関数アプリに追加されたら、その証明書を使用してカスタム DNS 名をセキュリティで保護したり、その証明書をアプリケーション コードで使用したりできます。Once the certificate is added to your App Service app or function app, you can secure a custom DNS name with it or use it in your application code.

次の表に、App Service で証明書を追加するためのオプションを示します。The following table lists the options you have for adding certificates in App Service:

オプションOption 説明Description
無料の App Service マネージド証明書を作成する (プレビュー)Create a free App Service Managed Certificate (Preview) App Service で www カスタム ドメインまたはネイキッド以外のドメインをセキュリティで保護することだけが必要な場合に、簡単に使用できるプライベート証明書。A private certificate that's easy to use if you just need to secure your www custom domain or any non-naked domain in App Service.
App Service 証明書を購入するPurchase an App Service certificate Azure によって管理されるプライベート証明書。A private certificate that's managed by Azure. 自動証明書管理のシンプルさと、更新オプションとエクスポート オプションの柔軟性が組み合わされています。It combines the simplicity of automated certificate management and the flexibility of renewal and export options.
Key Vault から証明書をインポートするImport a certificate from Key Vault Azure Key Vault を使用して PKCS12 証明書を管理する場合に便利です。Useful if you use Azure Key Vault to manage your PKCS12 certificates. プライベート証明書の要件」を参照してください。See Private certificate requirements.
プライベート証明書のアップロードUpload a private certificate 既にサードパーティ プロバイダーからのプライベート証明書がある場合は、それをアップロードすることができます。If you already have a private certificate from a third-party provider, you can upload it. プライベート証明書の要件」を参照してください。See Private certificate requirements.
パブリック証明書のアップロードUpload a public certificate パブリック証明書はカスタム ドメインのセキュリティ保護には使用されませんが、リモート リソースにアクセスするために必要な場合は、コードに読み込むことができます。Public certificates are not used to secure custom domains, but you can load them into your code if you need them to access remote resources.

前提条件Prerequisites

この攻略ガイドに従うには:To follow this how-to guide:

プライベート証明書の要件Private certificate requirements

注意

Azure Web Apps では、AES256 がサポートされません。pfx ファイルはすべて TripleDES で暗号化する必要があります。Azure Web Apps does not support AES256 and all pfx files should be encrypted with TripleDES.

無料の App Service マネージド証明書または App Service 証明書は、あらかじめ App Service の要件を満たしています。The free App Service Managed Certificate or the App Service certificate already satisfy the requirements of App Service. App Service にプライベート証明書をアップロードまたはインポートする場合、証明書は次の要件を満たしている必要があります。If you choose to upload or import a private certificate to App Service, your certificate must meet the following requirements:

  • パスワードで保護された PFX ファイルとしてエクスポートされているExported as a password-protected PFX file
  • 少なくとも 2048 ビット長の秘密キーが含まれているContains private key at least 2048 bits long
  • 証明書チェーン内のすべての中間証明書が含まれているContains all intermediate certificates in the certificate chain

TLS バインドでカスタム ドメインをセキュリティで保護する場合、証明書には次の追加の要件があります。To secure a custom domain in a TLS binding, the certificate has additional requirements:

  • サーバー認証用の拡張鍵使用が含まれている (OID = 1.3.6.1.5.5.7.3.1)Contains an Extended Key Usage for server authentication (OID = 1.3.6.1.5.5.7.3.1)
  • 信頼された証明機関によって署名されているSigned by a trusted certificate authority

注意

楕円曲線暗号 (ECC) 証明書 は、App Service で使用できますが、この記事では説明しません。Elliptic Curve Cryptography (ECC) certificates can work with App Service but are not covered by this article. ECC 証明書を作成する正確な手順については、証明機関にお問い合わせください。Work with your certificate authority on the exact steps to create ECC certificates.

Web アプリの準備Prepare your web app

カスタム セキュリティ バインディングを作成するか、お使いの App Service アプリのクライアント証明書を有効にするには、App Service プランBasicStandardPremium、または Isolated のいずれかのレベルである必要があります。To create custom security bindings or enable client certificates for your App Service app, your App Service plan must be in the Basic, Standard, Premium, or Isolated tier. この手順では、Web アプリが、サポートされている価格レベルであることを確認します。In this step, you make sure that your web app is in the supported pricing tier.

Azure へのサインインSign in to Azure

Azure Portalを開きます。Open the Azure portal.

[App Services] を検索して選択します。Search for and select App Services.

[App Services] を選択します

[App Services] ページで、Web アプリの名前を選択します。On the App Services page, select the name of your web app.

Azure アプリへのポータル ナビゲーション

Web アプリの管理ページが表示されます。You have landed on the management page of your web app.

価格レベルの確認Check the pricing tier

Web アプリ ページの左側のナビゲーションで [設定] セクションまでスクロールし、 [スケール アップ (App Service のプラン)] を選択します。In the left-hand navigation of your web app page, scroll to the Settings section and select Scale up (App Service plan).

スケール アップ メニュー

Web アプリが F1 レベルまたは D1 レベルに含まれていないことを確認します。Check to make sure that your web app is not in the F1 or D1 tier. Web アプリの現在のレベルは、ダーク ブルーのボックスで強調表示されます。Your web app's current tier is highlighted by a dark blue box.

価格レベルの確認

カスタム SSL は、F1 レベルまたは D1 レベルではサポートされていません。Custom SSL is not supported in the F1 or D1 tier. スケール アップする必要がある場合は、次のセクションの手順に従います。If you need to scale up, follow the steps in the next section. それ以外の場合は、 [スケール アップ] ページを閉じて、「App Service プランのスケール アップ」セクションはスキップしてください。Otherwise, close the Scale up page and skip the Scale up your App Service plan section.

App Service プランのスケール アップScale up your App Service plan

非 Free レベルのいずれかを選びます (B1B2B3、または運用カテゴリのいずれかのレベル)。Select any of the non-free tiers (B1, B2, B3, or any tier in the Production category). その他のオプションについては、 [See additional options](その他のオプションを参照する) をクリックします。For additional options, click See additional options.

[Apply] をクリックします。Click Apply.

価格レベルの選択

次の通知が表示されたら、スケール操作は完了です。When you see the following notification, the scale operation is complete.

スケール アップの通知

無料の証明書を作成する (プレビュー)Create a free certificate (Preview)

無料 App Service マネージド証明書は、App Service でカスタム DNS 名をセキュリティで保護するためのターンキー ソリューションです。The free App Service Managed Certificate is a turn-key solution for securing your custom DNS name in App Service. これは、App Service によって管理され、自動的に更新される、完全に機能する TLS/SSL 証明書です。It's a fully functional TLS/SSL certificate that's managed by App Service and renewed automatically. 無料の証明書には以下の制限が伴います。The free certificate comes with the following limitations:

  • ワイルドカード証明書はサポートされません。Does not support wildcard certificates.
  • ネイキッド ドメインはサポートされていません。Does not support naked domains.
  • エクスポートはできません。Is not exportable.
  • DNS A レコードはサポートされません。Does not support DNS A-records.

注意

無料の証明書は DigiCert によって発行されます。The free certificate is issued by DigiCert. 一部のトップレベル ドメインでは、CAA ドメイン レコード0 issue digicert.com の値を使用して作成することによって、DigiCert を証明書の発行者として明示的に許可する必要があります。For some top-level domains, you must explicitly allow DigiCert as a certificate issuer by creating a CAA domain record with the value: 0 issue digicert.com.

無料の App Service マネージド証明書を作成するには、次の手順を実行します。To create a free App Service Managed Certificate:

Azure portal の左側のメニューから、 [App Services] > <app-name> を選択します。In the Azure portal, from the left menu, select App Services > <app-name>.

アプリの左側のナビゲーションから、 [TLS/SSL 設定] > [秘密キー証明書 (.pfx)] > [Create App Service Managed Certificate](App Service マネージド証明書の作成) を選択します。From the left navigation of your app, select TLS/SSL settings > Private Key Certificates (.pfx) > Create App Service Managed Certificate.

App Service で無料の証明書を作成する

CNAME レコードを使用してアプリに適切にマップされたネイキッド以外のドメインが、ダイアログに一覧表示されます。Any non-naked domain that's properly mapped to your app with a CNAME record is listed in the dialog. 無料の証明書を作成するカスタム ドメインを選択し、 [作成] を選択します。Select the custom domain to create a free certificate for and select Create. サポートされているカスタム ドメインごとに証明書を 1 つだけ作成できます。You can create only one certificate for each supported custom domain.

操作が完了すると、 [秘密キー証明書] の一覧に証明書が表示されます。When the operation completes, you see the certificate in the Private Key Certificates list.

完了した無料の証明書の作成

重要

この証明書を使用してカスタム ドメインをセキュリティで保護するには、証明書バインドを作成する必要があります。To secure a custom domain with this certificate, you still need to create a certificate binding. バインドの作成」の手順に従います。Follow the steps in Create binding.

App Service 証明書をインポートするImport an App Service Certificate

Azure から App Service 証明書を購入する場合は、Azure で次のタスクが管理されます。If you purchase an App Service Certificate from Azure, Azure manages the following tasks:

  • GoDaddy から購入プロセスを実行する。Takes care of the purchase process from GoDaddy.
  • 証明書のドメイン検証を実行する。Performs domain verification of the certificate.
  • 証明書を Azure Key Vault に保持する。Maintains the certificate in Azure Key Vault.
  • 証明書の更新を管理する (「証明書の更新」を参照)。Manages certificate renewal (see Renew certificate).
  • App Service アプリでインポートしたコピーと証明書を自動的に同期する。Synchronize the certificate automatically with the imported copies in App Service apps.

App Service 証明書を購入するには、「証明書の注文を開始する」を参照してください。To purchase an App Service certificate, go to Start certificate order.

既に使用中の App Service 証明書がある場合は、次の操作を実行できます。If you already have a working App Service certificate, you can:

証明書の注文を開始するStart certificate order

App Service 証明書の作成ページで、App Service 証明書の注文を開始します。Start an App Service certificate order in the App Service Certificate create page.

App Service 証明書の購入の開始

次の表を使用して、証明書を構成できます。Use the following table to help you configure the certificate. 完了したら、 [作成] をクリックします。When finished, click Create.

設定Setting 説明Description
名前Name App Service 証明書のフレンドリ名。A friendly name for your App Service certificate.
ネイキッド ドメインのホスト名Naked Domain Host Name ルート ドメインはここで指定します。Specify the root domain here. 発行された証明書によって、ルート ドメインと www サブドメインの "両方" が保護されます。The issued certificate secures both the root domain and the www subdomain. 発行された証明書の [共通名] フィールドにはルート ドメインが含まれ、[サブジェクトの別名] フィールドには www ドメインが含まれています。In the issued certificate, the Common Name field contains the root domain, and the Subject Alternative Name field contains the www domain. 任意のサブドメインのみをセキュリティで保護するには、ここでサブドメインの完全修飾ドメイン名 を指定します (例: mysubdomain.contoso.com)。To secure any subdomain only, specify the fully qualified domain name of the subdomain here (for example, mysubdomain.contoso.com).
サブスクリプションSubscription 証明書が格納されるサブスクリプション。The subscription that will contain the certificate.
Resource groupResource group 証明書が格納されるリソース グループ。The resource group that will contain the certificate. 新しいリソース グループを使用するか、App Service アプリと同じリソース グループなどを選択できます。You can use a new resource group or select the same resource group as your App Service app, for example.
証明書 SKUCertificate SKU 作成する証明書の種類 (標準の証明書またはワイルドカード証明書) を決定します。Determines the type of certificate to create, whether a standard certificate or a wildcard certificate.
法律条項Legal Terms クリックして法律条項に同意したことを確認します。Click to confirm that you agree with the legal terms. 証明書は GoDaddy から取得されます。The certificates are obtained from GoDaddy.

Azure Key Vault に格納するStore in Azure Key Vault

証明書の購入プロセスの完了後、この証明書の使用を開始する前に完了する必要のある手順がまだいくつかあります。Once the certificate purchase process is complete, there are few more steps you need to complete before you can start using this certificate.

[App Service 証明書] ページで証明書を選択し、 [証明書の構成] > [手順 1:格納] をクリックします。Select the certificate in the App Service Certificates page, then click Certificate Configuration > Step 1: Store.

App Service 証明書の Key Vault ストレージを構成する

Key Vault は、クラウド アプリケーションやサービスで使用される暗号化キーとシークレットを保護するための Azure サービスです。Key Vault is an Azure service that helps safeguard cryptographic keys and secrets used by cloud applications and services. これは App Service 証明書に対して選択するストレージです。It's the storage of choice for App Service certificates.

[Key Vault の状態] ページで [Key Vault リポジトリ] をクリックして、新しいコンテナーを作成するか、既存のコンテナーを選択します。In the Key Vault Status page, click Key Vault Repository to create a new vault or choose an existing vault. 新しいコンテナーの作成を選択する場合は、次の表を使用してコンテナーを構成し、[作成] をクリックします。If you choose to create a new vault, use the following table to help you configure the vault and click Create. App Service アプリと同じサブスクリプションおよび同じリソース グループに新しい Key Vault を作成します。Create the new Key Vault inside the same subscription and resource group as your App Service app.

設定Setting 説明Description
名前Name 英数字とダッシュで構成される一意の名前。A unique name that consists for alphanumeric characters and dashes.
Resource groupResource group 推奨事項として、App Service 証明書と同じリソース グループを選択します。As a recommendation, select the same resource group as your App Service certificate.
場所Location App Service アプリと同じ場所を選択します。Select the same location as your App Service app.
Pricing tierPricing tier 詳しくは、Azure Key Vault の価格の詳細に関するページをご覧ください。For information, see Azure Key Vault pricing details.
アクセス ポリシーAccess policies コンテナー リソースに対するアプリケーションと許可されるアクセス権を定義します。Defines the applications and the allowed access to the vault resources. 後で「さまざまなアプリケーションにキー コンテナーへのアクセス許可を付与する」の手順に従って構成できます。You can configure it later, following the steps at Grant several applications access to a key vault.
仮想ネットワーク アクセスVirtual Network Access 特定の Azure 仮想ネットワークへのコンテナー アクセスを制限します。Restrict vault access to certain Azure virtual networks. 後で「Azure Key Vault のファイアウォールと仮想ネットワークを構成する」の手順に従って構成できますYou can configure it later, following the steps at Configure Azure Key Vault Firewalls and Virtual Networks

コンテナーを選択したら、 [Key Vault リポジトリ] ページを閉じます。Once you've selected the vault, close the Key Vault Repository page. [手順 1: 格納] オプションに、成功を示す緑色のチェック マークが表示されます。The Step 1: Store option should show a green check mark for success. 次の手順のためにページは開いたままにしておきます。Keep the page open for the next step.

ドメインの所有権を検証するVerify domain ownership

最後の手順で使用した [証明書の構成] ページで、 [手順 2:確認] をクリックします。From the same Certificate Configuration page you used in the last step, click Step 2: Verify.

App Service 証明書のドメインを検証する

[App Service の確認] を選択します。Select App Service Verification. Web アプリに既にドメインをマップしたので (「前提条件」を参照)、既に確認されています。Since you already mapped the domain to your web app (see Prerequisites), it's already verified. [確認] をクリックして、この手順を完了します。Just click Verify to finish this step. "証明書はドメイン確認済みです" というメッセージが表示されるまで、 [最新の情報に更新] をクリックします。Click the Refresh button until the message Certificate is Domain Verified appears.

注意

4 種類のドメイン検証方法がサポートされています。Four types of domain verification methods are supported:

  • App Service - ドメインが同一のサブスクリプション内で既に App Service アプリにマップされている場合に最も便利なオプションです。App Service - The most convenient option when the domain is already mapped to an App Service app in the same subscription. この方法は、App Service アプリがドメインの所有権を既に確認済みである事実を利用しています。It takes advantage of the fact that the App Service app has already verified the domain ownership.
  • ドメイン - Azure から購入した App Service ドメインを確認します。Domain - Verify an App Service domain that you purchased from Azure. Azure は確認 TXT レコードを自動的に追加し、プロセスを完了します。Azure automatically adds the verification TXT record for you and completes the process.
  • メール - ドメイン管理者に電子メールを送信することによってドメインを確認します。Mail - Verify the domain by sending an email to the domain administrator. 手順は、オプションを選択したときに提供されます。Instructions are provided when you select the option.
  • 手動 - HTML ページ (標準証明書のみ) または DNS TXT レコードを使用してドメインを確認します。Manual - Verify the domain using either an HTML page (Standard certificate only) or a DNS TXT record. 手順は、オプションを選択したときに提供されます。Instructions are provided when you select the option.

App Service に証明書をインポートするImport certificate into App Service

Azure portal の左側のメニューから、 [App Services] > <app-name> を選択します。In the Azure portal, from the left menu, select App Services > <app-name>.

アプリの左側のナビゲーションから、 [TLS/SSL 設定] > [秘密キー証明書 (.pfx)] > [App Service 証明書のインポート] を選択します。From the left navigation of your app, select TLS/SSL settings > Private Key Certificates (.pfx) > Import App Service Certificate.

App Service に App Service 証明書をインポートする

購入した証明書を選択し、 [OK] を選択します。Select the certificate that you just purchased and select OK.

操作が完了すると、 [秘密キー証明書] の一覧に証明書が表示されます。When the operation completes, you see the certificate in the Private Key Certificates list.

完了した App Service 証明書のインポート

重要

この証明書を使用してカスタム ドメインをセキュリティで保護するには、証明書バインドを作成する必要があります。To secure a custom domain with this certificate, you still need to create a certificate binding. バインドの作成」の手順に従います。Follow the steps in Create binding.

Key Vault から証明書をインポートするImport a certificate from Key Vault

Azure Key Vault を使用して証明書を管理している場合は、要件を満たしている限り、Key Vault から App Service に PKCS12 証明書をインポートすることができます。If you use Azure Key Vault to manage your certificates, you can import a PKCS12 certificate from Key Vault into App Service as long as it satisfies the requirements.

Azure portal の左側のメニューから、 [App Services] > <app-name> を選択します。In the Azure portal, from the left menu, select App Services > <app-name>.

アプリの左側のナビゲーションから、 [TLS/SSL 設定] > [秘密キー証明書 (.pfx)] > [Key Vault 証明書のインポート] を選択します。From the left navigation of your app, select TLS/SSL settings > Private Key Certificates (.pfx) > Import Key Vault Certificate.

App Service に Key Vault 証明書をインポートする

次の表を使用すると、証明書を選択する際に役立ちます。Use the following table to help you select the certificate.

設定Setting 説明Description
サブスクリプションSubscription Key Vault が属するサブスクリプション。The subscription that the Key Vault belongs to.
Key VaultKey Vault インポートする証明書を含むコンテナー。The vault with the certificate you want to import.
CertificateCertificate コンテナー内の PKCS12 証明書の一覧から選択します。Select from the list of PKCS12 certificates in the vault. コンテナー内のすべての PKCS12 証明書がその拇印と共に一覧表示されますが、App Service ですべてがサポートされているわけではありません。All PKCS12 certificates in the vault are listed with their thumbprints, but not all are supported in App Service.

操作が完了すると、 [秘密キー証明書] の一覧に証明書が表示されます。When the operation completes, you see the certificate in the Private Key Certificates list. インポートがエラーで失敗する場合は、証明書が App Service の要件を満たしていません。If the import fails with an error, the certificate doesn't meet the requirements for App Service.

完了した Key Vault 証明書のインポート

重要

この証明書を使用してカスタム ドメインをセキュリティで保護するには、証明書バインドを作成する必要があります。To secure a custom domain with this certificate, you still need to create a certificate binding. バインドの作成」の手順に従います。Follow the steps in Create binding.

プライベート証明書のアップロードUpload a private certificate

証明書プロバイダーから証明書を取得した後は、このセクションの手順に従って App Service で使用できるように準備します。Once you obtain a certificate from your certificate provider, follow the steps in this section to make it ready for App Service.

中間証明書を結合するMerge intermediate certificates

証明機関から証明書チェーンの複数の証明書を提供された場合は、それらの証明書を順番に結合する必要があります。If your certificate authority gives you multiple certificates in the certificate chain, you need to merge the certificates in order.

これを行うには、受信した各証明書をテキスト エディターで開きます。To do this, open each certificate you received in a text editor.

結合した証明書用に mergedcertificate.crt という名前のファイルを作成します。Create a file for the merged certificate, called mergedcertificate.crt. テキスト エディターで、このファイルに各証明書の内容をコピーします。In a text editor, copy the content of each certificate into this file. 証明書の順序は、証明書チェーンの順番に従う必要があります。自分の証明書から始まり、ルート証明書で終わります。The order of your certificates should follow the order in the certificate chain, beginning with your certificate and ending with the root certificate. 次の例のようになります。It looks like the following example:

-----BEGIN CERTIFICATE-----
<your entire Base64 encoded SSL certificate>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 1>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded intermediate certificate 2>
-----END CERTIFICATE-----

-----BEGIN CERTIFICATE-----
<The entire Base64 encoded root certificate>
-----END CERTIFICATE-----

PFX への証明書のエクスポートExport certificate to PFX

結合した TLS/SSL 証明書を、証明書の要求と一緒に生成された秘密キーと共にエクスポートします。Export your merged TLS/SSL certificate with the private key that your certificate request was generated with.

証明書の要求の生成に OpenSSL を使用した場合、秘密キー ファイルは作成されています。If you generated your certificate request using OpenSSL, then you have created a private key file. 証明書を PFX にエクスポートするには、次のコマンドを実行します。To export your certificate to PFX, run the following command. プレースホルダーの <private-key-file><merged-certificate-file> をそれぞれ、秘密キーのパスとマージされた証明書ファイルに変更します。Replace the placeholders <private-key-file> and <merged-certificate-file> with the paths to your private key and your merged certificate file.

openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>  

メッセージが表示されたら、エクスポートのパスワードを定義します。When prompted, define an export password. このパスワードは、後で TLS/SSL 証明書を App Service にアップロードするときに使用します。You'll use this password when uploading your TLS/SSL certificate to App Service later.

IIS または Certreq.exe を使用して証明書の要求を生成した場合は、ローカル コンピューターに証明書をインストールした後で証明書を PFX にエクスポートします。If you used IIS or Certreq.exe to generate your certificate request, install the certificate to your local machine, and then export the certificate to PFX.

証明書を App Service にアップロードするUpload certificate to App Service

これで、証明書を App Service にアップロードする準備ができました。You're now ready upload the certificate to App Service.

Azure portal の左側のメニューから、 [App Services] > <app-name> を選択します。In the Azure portal, from the left menu, select App Services > <app-name>.

アプリの左側のナビゲーションから、 [TLS/SSL 設定] > [秘密キー証明書 (.pfx)] > [証明書のアップロード] を選択します。From the left navigation of your app, select TLS/SSL settings > Private Key Certificates (.pfx) > Upload Certificate.

App Service にプライベート証明書をアップロードする

[PFX 証明書ファイル] で、PFX ファイルを選択します。In PFX Certificate File, select your PFX file. [証明書のパスワード] で、PFX ファイルのエクスポート時に作成したパスワードを入力します。In Certificate password, type the password that you created when you exported the PFX file. 完了したら、 [アップロード] をクリックします。When finished, click Upload.

操作が完了すると、 [秘密キー証明書] の一覧に証明書が表示されます。When the operation completes, you see the certificate in the Private Key Certificates list.

完了した証明書のアップロード

重要

この証明書を使用してカスタム ドメインをセキュリティで保護するには、証明書バインドを作成する必要があります。To secure a custom domain with this certificate, you still need to create a certificate binding. バインドの作成」の手順に従います。Follow the steps in Create binding.

パブリック証明書のアップロードUpload a public certificate

公開証明書は、 .cer 形式でサポートされています。Public certificates are supported in the .cer format.

Azure portal の左側のメニューから、 [App Services] > <app-name> を選択します。In the Azure portal, from the left menu, select App Services > <app-name>.

アプリの左側のナビゲーションで、 [SSL 設定] > [公開証明書 (.cer)] > [公開キー証明書のアップロード] の順にクリックします。From the left navigation of your app, click TLS/SSL settings > Public Certificates (.cer) > Upload Public Key Certificate.

[名前] に、証明書の名前を入力します。In Name, type a name for the certificate. [CER 証明書ファイル] で、目的の CER ファイルを選択します。In CER Certificate file, select your CER file.

[アップロード] をクリックします。Click Upload.

App Service に公開証明書をアップロードする

証明書がアップロードされたら、証明書の拇印をコピーし、「証明書をアクセス可能にする」を参照してください。Once the certificate is uploaded, copy the certificate thumbprint and see Make the certificate accessible.

App Service 証明書を管理するManage App Service certificates

このセクションでは、「App Service 証明書をインポートする」で購入した App Service 証明書を管理する方法について説明します。This section shows you how to manage an App Service certificate you purchased in Import an App Service certificate.

証明書のキー更新Rekey certificate

証明書の秘密キーが侵害されたと思われる場合は、証明書のキー更新を実行できます。If you think your certificate's private key is compromised, you can rekey your certificate. [App Service 証明書] ページで証明書を選択し、左側のナビゲーションから [キー更新と同期] を選択します。Select the certificate in the App Service Certificates page, then select Rekey and Sync from the left navigation.

[キー更新] をクリックして処理を開始します。Click Rekey to start the process. 処理が完了するまでに 1 ~ 10 分かかることがあります。This process can take 1-10 minutes to complete.

App Service 証明書をキー更新する

証明書のキーを更新すると、証明機関から発行された新しい証明書が展開されます。Rekeying your certificate rolls the certificate with a new certificate issued from the certificate authority.

キー更新操作が完了したら、 [同期] をクリックします。同期操作によって、アプリにダウンタイムを発生させることなく、App Service 内の証明書に対するホスト名のバインドが自動的に更新されます。Once the rekey operation is complete, click Sync. The sync operation automatically updates the hostname bindings for the certificate in App Service without causing any downtime to your apps.

注意

[同期] をクリックしなくても、証明書は 48 時間以内に App Service によって自動的に同期されます。If you don't click Sync, App Service automatically syncs your certificate within 48 hours.

証明書の更新Renew certificate

任意の時点で証明書の自動更新をオンにするには、[App Service 証明書] ページで証明書を選択し、左側のナビゲーションで [自動更新の設定] をクリックします。To turn on automatic renewal of your certificate at any time, select the certificate in the App Service Certificates page, then click Auto Renew Settings in the left navigation. 既定では、App Service 証明書の有効期間は 1 年です。By default, App Service Certificates have a one-year validity period.

[オン] を選択して、 [保存] をクリックします。Select On and click Save. 自動更新をオンにすると、証明書は有効期限の 60 日前に自動更新を開始できます。Certificates can start automatically renewing 60 days before expiration if you have automatic renewal turned on.

App Service 証明書を更新する

証明書を手動で更新するには、 [手動更新] をクリックします。To manually renew the certificate instead, click Manual Renew. 有効期限の 60 日前に、証明書の手動更新を要求できます。You can request to manually renew your certificate 60 days before expiration.

更新操作が完了したら、 [同期] をクリックします。同期操作によって、アプリにダウンタイムを発生させることなく、App Service 内の証明書に対するホスト名のバインドが自動的に更新されます。Once the renew operation is complete, click Sync. The sync operation automatically updates the hostname bindings for the certificate in App Service without causing any downtime to your apps.

注意

[同期] をクリックしなくても、証明書は 48 時間以内に App Service によって自動的に同期されます。If you don't click Sync, App Service automatically syncs your certificate within 48 hours.

証明書をエクスポートします。Export certificate

App Service 証明書は Key Vault シークレットであるため、そのファイルの PFX コピーをエクスポートして、他の Azure サービスまたは Azure の外部で使用することができます。Because an App Service Certificate is a Key Vault secret, you can export a PFX copy of it and use it for other Azure services or outside of Azure.

App Service 証明書を PFX ファイルとしてエクスポートするには、Cloud Shell で次のコマンドを実行します。To export the App Service Certificate as a PFX file, run the following commands in the Cloud Shell. Azure CLI をインストールした場合は、ローカルで実行することもできます。You can also run it locally if you installed Azure CLI. プレースホルダーは、App Service 証明書の作成時に使用した名前に置き換えます。Replace the placeholders with the names you used when you created the App Service certificate.

secretname=$(az resource show \
    --resource-group <group-name> \
    --resource-type "Microsoft.CertificateRegistration/certificateOrders" \
    --name <app-service-cert-name> \
    --query "properties.certificates.<app-service-cert-name>.keyVaultSecretName" \
    --output tsv)

az keyvault secret download \
    --file appservicecertificate.pfx \
    --vault-name <key-vault-name> \
    --name $secretname \
    --encoding base64

ダウンロードされた appservicecertificate ファイルは、パブリック証明書とプライベート証明書の両方を含む生の PKCS12 ファイルです。The downloaded appservicecertificate.pfx file is a raw PKCS12 file that contains both the public and private certificates. 各プロンプトで、インポート パスワードと PEM パスフレーズに空の文字列を使用します。In each prompt, use an empty string for the import password and the PEM pass phrase.

証明書の削除Delete certificate

App Service 証明書の削除は最終的なものであり、元に戻すことができません。Deletion of an App Service certificate is final and irreversible. App Service 証明書リソースを削除すると、証明書が失効します。Deletion of a App Service Certificate resource results in the certificate being revoked. この証明書との App Service のバインディングは無効になります。Any binding in App Service with this certificate becomes invalid. 誤って削除されないようにするために、Azure により証明書にロックが設定されます。To prevent accidental deletion, Azure puts a lock on the certificate. App Service 証明書を削除するには、最初に証明書の削除ロックを削除する必要があります。To delete an App Service certificate, you must first remove the delete lock on the certificate.

[App Service 証明書] ページで証明書を選択し、左側のナビゲーションから [ロック] を選択します。Select the certificate in the App Service Certificates page, then select Locks in the left navigation.

ロックの種類 [削除] で、証明書のロックを見つけます。Find the lock on your certificate with the lock type Delete. その右側にある [削除] を選択します。To the right of it, select Delete.

App Service 証明書のロックを削除する

これで、App Service 証明書を削除できるようになりました。Now you can delete the App Service certificate. 左側のナビゲーションから [概要] > [削除] を選択します。From the left navigation, select Overview > Delete. 確認ダイアログで、証明書の名前を入力し、 [OK] を選択します。In the confirmation dialog, type the certificate name and select OK.

スクリプトで自動化するAutomate with scripts

Azure CLIAzure CLI

#!/bin/bash

fqdn=<replace-with-www.{yourdomain}>
pfxPath=<replace-with-path-to-your-.PFX-file>
pfxPassword=<replace-with-your=.PFX-password>
resourceGroup=myResourceGroup
webappname=mywebapp$RANDOM

# Create a resource group.
az group create --location westeurope --name $resourceGroup

# Create an App Service plan in Basic tier (minimum required by custom domains).
az appservice plan create --name $webappname --resource-group $resourceGroup --sku B1

# Create a web app.
az webapp create --name $webappname --resource-group $resourceGroup \
--plan $webappname

echo "Configure a CNAME record that maps $fqdn to $webappname.azurewebsites.net"
read -p "Press [Enter] key when ready ..."

# Before continuing, go to your DNS configuration UI for your custom domain and follow the 
# instructions at https://aka.ms/appservicecustomdns to configure a CNAME record for the 
# hostname "www" and point it your web app's default domain name.

# Map your prepared custom domain name to the web app.
az webapp config hostname add --webapp-name $webappname --resource-group $resourceGroup \
--hostname $fqdn

# Upload the SSL certificate and get the thumbprint.
thumbprint=$(az webapp config ssl upload --certificate-file $pfxPath \
--certificate-password $pfxPassword --name $webappname --resource-group $resourceGroup \
--query thumbprint --output tsv)

# Binds the uploaded SSL certificate to the web app.
az webapp config ssl bind --certificate-thumbprint $thumbprint --ssl-type SNI \
--name $webappname --resource-group $resourceGroup

echo "You can now browse to https://$fqdn"

PowerShellPowerShell

$fqdn="<Replace with your custom domain name>"
$pfxPath="<Replace with path to your .PFX file>"
$pfxPassword="<Replace with your .PFX password>"
$webappname="mywebapp$(Get-Random)"
$location="West Europe"

# Create a resource group.
New-AzResourceGroup -Name $webappname -Location $location

# Create an App Service plan in Free tier.
New-AzAppServicePlan -Name $webappname -Location $location `
-ResourceGroupName $webappname -Tier Free

# Create a web app.
New-AzWebApp -Name $webappname -Location $location -AppServicePlan $webappname `
-ResourceGroupName $webappname

Write-Host "Configure a CNAME record that maps $fqdn to $webappname.azurewebsites.net"
Read-Host "Press [Enter] key when ready ..."

# Before continuing, go to your DNS configuration UI for your custom domain and follow the 
# instructions at https://aka.ms/appservicecustomdns to configure a CNAME record for the 
# hostname "www" and point it your web app's default domain name.

# Upgrade App Service plan to Basic tier (minimum required by custom SSL certificates)
Set-AzAppServicePlan -Name $webappname -ResourceGroupName $webappname `
-Tier Basic

# Add a custom domain name to the web app. 
Set-AzWebApp -Name $webappname -ResourceGroupName $webappname `
-HostNames @($fqdn,"$webappname.azurewebsites.net")

# Upload and bind the SSL certificate to the web app.
New-AzWebAppSSLBinding -WebAppName $webappname -ResourceGroupName $webappname -Name $fqdn `
-CertificateFilePath $pfxPath -CertificatePassword $pfxPassword -SslState SniEnabled

その他のリソースMore resources