Azure App Service에서 TLS/SSL 인증서 추가Add a TLS/SSL certificate in Azure App Service

Azure App Service는 확장성 높은 자체 패치 웹 호스팅 서비스를 제공합니다.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 DescriptionDescription
무료 App Service Managed Certificate(미리 보기) 만들기Create a free App Service Managed Certificate (Preview) www사용자 지정 도메인 또는 App Service의 비-네이키드 도메인만 보호하면 되는 경우에 간편하게 사용할 수 있는 프라이빗 인증서입니다.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 Managed Certificate 또는 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.

웹앱 준비Prepare your web app

사용자 지정 보안 바인딩을 만들거나 App Service 앱에 대한 클라이언트 인증서를 사용하도록 설정하려면 App Service 계획기본, 표준, 프리미엄 또는 격리 계층에 있어야 합니다.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. 이 단계에서는 웹앱이 지원되는 가격 책정 계층에 있음을 확인합니다.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 Service 선택

App Service 페이지에서 웹앱의 이름을 선택합니다.On the App Services page, select the name of your web app.

Azure 앱에 대한 포털 탐색

웹앱의 관리 페이지에 연결되었습니다.You have landed on the management page of your web app.

가격 책정 계층 확인Check the pricing tier

웹앱 페이지의 왼쪽 탐색 영역에서 설정 섹션으로 스크롤하고 강화(App Service 계획) 를 선택합니다.In the left-hand navigation of your web app page, scroll to the Settings section and select Scale up (App Service plan).

강화 메뉴

웹앱이 F1 또는 D1 계층이 아닌지 확인합니다.Check to make sure that your web app is not in the F1 or D1 tier. 웹앱의 현재 계층이 진한 파란색 상자로 강조 표시됩니다.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

유료 계층(B1, B2, B3, 또는 프로덕션 범주의 모든 계층) 중 하나를 선택합니다.Select any of the non-free tiers (B1, B2, B3, or any tier in the Production category). 추가 옵션을 보려면 추가 옵션 보기를 클릭합니다.For additional options, click See additional options.

적용을 클릭합니다.Click Apply.

가격 책정 계층 선택

다음 알림이 표시되면 강화 작업이 완료됩니다.When you see the following notification, the scale operation is complete.

강화 알림

무료 인증서(미리 보기) 만들기Create a free certificate (Preview)

무료 App Service Managed Certificate는 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.
  • A 레코드를 지원하지 않습니다.Does not support A records. 예를 들어 A 레코드에서는 자동 갱신이 작동하지 않습니다.For example, automatic renewal doesn't work with A records.

참고

무료 인증서는 DigiCert에서 발급됩니다.The free certificate is issued by DigiCert. 일부 최상위 도메인의 경우 0 issue digicert.com 값으로 CAA 도메인 레코드를 만들어 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 Managed Certificate를 만드는 방법은 다음과 같습니다.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) > App Service Managed Certificate 만들기를 선택합니다.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. 지원되는 사용자 지정 도메인마다 인증서를 하나씩만 만들 수 있습니다.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 Certificate 가져오기Import an App Service Certificate

Azure에서 App Service Certificate를 구매하는 경우 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 Certificate 만들기 페이지에서 App Service Certificate 주문을 시작합니다.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 DescriptionDescription
NameName App Service Certificate에 대한 식별 이름입니다.A friendly name for your App Service certificate.
Naked 도메인 호스트 이름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).
SubscriptionSubscription 인증서를 포함할 구독입니다.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 Certificate 페이지에서 인증서를 선택한 다음, 인증서 구성 > 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 Certificate에 대해 선택한 스토리지입니다.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 DescriptionDescription
NameName 영숫자와 대시로 구성된 고유한 이름입니다.A unique name that consists for alphanumeric characters and dashes.
Resource groupResource group 권장 사항으로, App Service Certificate과 동일한 리소스 그룹을 선택합니다.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 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 액세스Virtual Network Access 특정 Azure Virtual Network에 대한 자격 증명 모음 액세스 액세스를 제한합니다.Restrict vault access to certain Azure virtual networks. 나중에 Azure Key Vault 방화벽 및 Virtual Network 구성의 단계에 따라 구성할 수 있습니다.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. 도메인을 웹앱에 이미 매핑했기 때문에(필수 구성 요소 참조), 이미 확인되었습니다.Since you already mapped the domain to your web app (see Prerequisites), it's already verified. 간단히 확인을 클릭하여 단계를 마칩니다.Just click Verify to finish this step. 인증서 도메인이 확인됨 메시지가 나타날 때까지 Refresh 단추를 누릅니다.Click the Refresh button until the message Certificate is Domain Verified appears.

참고

네 가지 유형의 도메인 확인 방법이 지원됩니다.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 Certificate 가져오기를 선택합니다.From the left navigation of your app, select TLS/SSL settings > Private Key Certificates (.pfx) > Import App Service Certificate.

App Service에서 App Service 인증서 가져오기

방금 구매한 인증서를 선택하고 확인을 선택합니다.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의 요구 사항을 충족하는 PKCS12 인증서를 App Service으로 가져올 수 있습니다.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 DescriptionDescription
SubscriptionSubscription Key Vault가 속한 구독입니다.The subscription that the Key Vault belongs to.
Key VaultKey Vault 가져오려는 인증서가 포함된 자격 증명 모음입니다.The vault with the certificate you want to import.
인증서Certificate 자격 증명 모음의 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>.

앱의 왼쪽 탐색 영역에서 TLS/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.

Azure App 인증서 관리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.

참고

동기화를 클릭하지 않으면 App Service에서 48시간 이내에 인증서를 자동으로 동기화합니다.If you don't click Sync, App Service automatically syncs your certificate within 48 hours.

인증서 갱신Renew certificate

언제든 인증서 자동 갱신을 켜려면 App Service Certificate 페이지에서 인증서를 선택한 다음, 왼쪽 탐색 영역에서 자동 갱신 설정을 클릭합니다.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.

참고

동기화를 클릭하지 않으면 App Service에서 48시간 이내에 인증서를 자동으로 동기화합니다.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.pfx 파일은 공용 인증서와 프라이빗 인증서를 모두 포함하는 원시 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 Certificate 리소스를 삭제하면 인증서가 해지됩니다.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. 확인 대화 상자에서 인증서 이름을 입력하고 확인을 선택합니다.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