Azure Cloud Services 인증서 개요Certificates overview for Azure Cloud Services

인증서는 Azure에서 클라우드 서비스(서비스 인증서)와 관리 API(관리 인증서)를 통한 인증에 사용됩니다.Certificates are used in Azure for cloud services (service certificates) and for authenticating with the management API (management certificates). 이 토픽에서는 두 가지 인증서 형식에 대한 일반적인 개요와 인증서를 만들고 Azure에 배포하는 방법을 살펴봅니다.This topic gives a general overview of both certificate types, how to create and deploy them to Azure.

Azure에서 사용되는 인증서는 x.509 v3 인증서이며 다른 신뢰할 수 있는 인증서에 의해 서명되거나 자체 서명될 수 있습니다.Certificates used in Azure are x.509 v3 certificates and can be signed by another trusted certificate or they can be self-signed. 자체 서명된 인증서는 해당 작성자에 의해 서명되므로 기본적으로 신뢰할 수 없습니다.A self-signed certificate is signed by its own creator, therefore it is not trusted by default. 대부분의 브라우저는 이러한 문제를 무시할 수 있습니다.Most browsers can ignore this problem. Cloud Services를 개발하고 테스트하는 경우에만 자체 서명된 인증서를 사용해야 합니다.You should only use self-signed certificates when developing and testing your cloud services.

Azure에서 사용 하는 인증서에는 공개 키가 포함 될 수 있습니다.Certificates used by Azure can contains a public key. 인증서에는 지문이 포함되어 있어 모호하지 않은 방식의 식별 수단을 제공합니다.Certificates have a thumbprint that provides a means to identify them in an unambiguous way. 이 지 문은 Azure 구성 파일 에서 클라우드 서비스가 사용 해야 하는 인증서를 식별 하는 데 사용 됩니다.This thumbprint is used in the Azure configuration file to identify which certificate a cloud service should use.

참고

Azure Cloud Services는 AES256-SHA256 암호화 인증서를 수락하지 않습니다.Azure Cloud Services does not accept AES256-SHA256 encrypted certificate.

서비스 인증서란 무엇인가요?What are service certificates?

서비스 인증서는 클라우드 서비스에 첨부되며 서비스와의 보안 통신이 가능하게 해 줍니다.Service certificates are attached to cloud services and enable secure communication to and from the service. 예를 들어 웹 역할을 배포한 경우 노출된 HTTPS 엔드포인트를 인증할 수 있는 인증서를 제공하려고 할 것입니다.For example, if you deployed a web role, you would want to supply a certificate that can authenticate an exposed HTTPS endpoint. 서비스 정의에 있는 서비스 인증서는 자동으로 해당 역할 인스턴스를 실행하는 가상 머신에 배포됩니다.Service certificates, defined in your service definition, are automatically deployed to the virtual machine that is running an instance of your role.

Azure Portal을 사용하거나 클래식 배포 모델을 사용하여 서비스 인증서를 Azure Portal에 업로드할 수 있습니다.You can upload service certificates to Azure either using the Azure portal or by using the classic deployment model. 서비스 인증서는 특정 클라우드 서비스와 연관됩니다.Service certificates are associated with a specific cloud service. 서비스 정의 파일에서 배포에 할당됩니다.They are assigned to a deployment in the service definition file.

서비스 인증서는 서비스와 별도로 관리할 수 있으며 다른 개인이 관리할 수도 있습니다.Service certificates can be managed separately from your services, and may be managed by different individuals. 예를 들어 개발자는 IT 관리자가 이전에 Azure로 업로드한 인증서를 참조하는 서비스 패키지를 업로드할 수 있습니다.For example, a developer may upload a service package that refers to a certificate that an IT manager has previously uploaded to Azure. IT 관리자는 새 서비스 패키지를 업로드할 필요 없이 서비스 구성을 변경하는 해당 인증서를 관리하고 갱신할 수 있습니다.An IT manager can manage and renew that certificate (changing the configuration of the service) without needing to upload a new service package. 새 서비스 패키지 없이 업데이트가 가능한 이유는 인증서의 논리적 이름과 저장소 이름 및 위치는 서비스 정의 파일에 있고 인증서 지문은 서비스 구성 파일에 지정되어 있기 때문입니다.Updating without a new service package is possible because the logical name, store name, and location of the certificate is in the service definition file and while the certificate thumbprint is specified in the service configuration file. 인증서를 업데이트하려면 새 인증서를 업로드하고 서비스 구성 파일의 지문 값을 변경하기만 하면 됩니다.To update the certificate, it's only necessary to upload a new certificate and change the thumbprint value in the service configuration file.

참고

CLOUD SERVICES FAQ-구성 및 관리 문서에는 인증서에 대 한 몇 가지 유용한 정보가 있습니다.The Cloud Services FAQ - Configuration and Management article has some helpful information about certificates.

관리 인증서란 무엇인가요?What are management certificates?

관리 인증서를 사용하면 클래식 배포 모델로 인증할 수 있습니다.Management certificates allow you to authenticate with the classic deployment model. Visual Studio 또는 Azure SDK와 같은 많은 프로그램 및 도구에서 이러한 인증서를 사용하여 다양한 Azure 서비스의 구성 및 배포를 자동화합니다.Many programs and tools (such as Visual Studio or the Azure SDK) use these certificates to automate configuration and deployment of various Azure services. 클라우드 서비스와는 실제로 관련이 없습니다.These are not really related to cloud services.

경고

주의가 필요합니다!Be careful! 이러한 형식의 인증서를 사용하면 해당 인증서로 인증된 사람은 누구나 연결된 구독을 관리할 수 있습니다.These types of certificates allow anyone who authenticates with them to manage the subscription they are associated with.

제한 사항Limitations

관리 인증서는 구독당 100개로 제한됩니다.There is a limit of 100 management certificates per subscription. 특정 서비스 관리자의 사용자 ID에서 모든 구독에 대한 관리 인증서가 100개로 제한되기도 합니다.There is also a limit of 100 management certificates for all subscriptions under a specific service administrator’s user ID. 계정 관리자의 사용자 ID가 이미 관리 인증서 100개를 추가하는 데 사용되었으나 인증서가 더 필요한 경우 공동 관리자를 추가하여 인증서를 더 추가할 수 있습니다.If the user ID for the account administrator has already been used to add 100 management certificates and there is a need for more certificates, you can add a co-administrator to add the additional certificates.

자체 서명된 새로운 인증서 만들기Create a new self-signed certificate

어떠한 도구든 다음 설정을 준수하는 경우 자체 서명된 인증서를 만드는 데 사용할 수 있습니다.You can use any tool available to create a self-signed certificate as long as they adhere to these settings:

  • X.509 인증서여야 합니다.An X.509 certificate.

  • 공개 키를 포함 합니다.Contains a public key.

  • 키 교환용으로 만들어졌어야 합니다(.pfx 파일).Created for key exchange (.pfx file).

  • 주체 이름은 클라우드 서비스 액세스에 사용되는 도메인과 일치해야 합니다.Subject name must match the domain used to access the cloud service.

    Cloudapp.net (또는 Azure 관련) 도메인에 대 한 TLS/SSL 인증서를 가져올 수 없습니다. 인증서의 주체 이름은 응용 프로그램에 액세스 하는 데 사용 되는 사용자 지정 도메인 이름과 일치 해야 합니다.You cannot acquire a TLS/SSL certificate for the cloudapp.net (or for any Azure-related) domain; the certificate's subject name must match the custom domain name used to access your application. 예를 들어, contoso.cloudapp.net이 아니라contoso.net입니다.For example, contoso.net, not contoso.cloudapp.net.

  • 최소한 2048비트 암호화를 사용해야 합니다.Minimum of 2048-bit encryption.

  • 서비스 인증서에만 해당: 클라이언트 쪽 인증서는 개인 인증서 저장소에 있어야 합니다.Service Certificate Only: Client-side certificate must reside in the Personal certificate store.

Windows에서는 두 가지 방법, makecert.exe 유틸리티 또는 IIS를 사용하여 쉽게 인증서를 만들 수 있습니다.There are two easy ways to create a certificate on Windows, with the makecert.exe utility, or IIS.

Makecert.exeMakecert.exe

이 유틸리티는 사용되지 않으므로 여기에 더 이상 설명되지 않습니다.This utility has been deprecated and is no longer documented here. 자세한 내용은 이 MSDN 문서를 참조하세요.For more information, see this MSDN article.

PowerShellPowerShell

$cert = New-SelfSignedCertificate -DnsName yourdomain.cloudapp.net -CertStoreLocation "cert:\LocalMachine\My" -KeyLength 2048 -KeySpec "KeyExchange"
$password = ConvertTo-SecureString -String "your-password" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\my-cert-file.pfx" -Password $password

참고

도메인 대신에 IP 주소가 들어 있는 인증서를 사용하려는 경우 -DnsName 매개 변수에서 IP 주소를 사용 합니다.If you want to use the certificate with an IP address instead of a domain, use the IP address in the -DnsName parameter.

관리 포털에서 인증서를 사용하려는 경우 .cer 파일로 내보냅니다.If you want to use this certificate with the management portal, export it to a .cer file:

Export-Certificate -Type CERT -Cert $cert -FilePath .\my-cert-file.cer

IIS(인터넷 정보 서비스)Internet Information Services (IIS)

인터넷에는 IIS를 사용하여 이 작업을 수행하는 방법을 다룬 내용이 많이 있습니다.There are many pages on the internet that cover how to do this with IIS. 여기 에서 볼 수 있습니다.Here is a great one I found that I think explains it well.

LinuxLinux

문서에서는 SSH로 인증서를 만드는 방법을 설명합니다.This article describes how to create certificates with SSH.

다음 단계Next steps

서비스 인증서를 Azure Portal에 업로드합니다.Upload your service certificate to the Azure portal.

관리 API 인증서를 Azure Portal에 업로드합니다.Upload a management API certificate to the Azure portal.