Omówienie certyfikatów usług Azure Cloud Services (klasycznych)

Ważne

Cloud Services (wersja klasyczna) jest teraz przestarzała dla nowych klientów i zostanie wycofana 31 sierpnia 2024 r. dla wszystkich klientów. Nowe wdrożenia powinny używać nowego modelu wdrażania opartego na usłudze Azure Resource Manager Azure Cloud Services (wsparcie dodatkowe).

Certyfikaty są używane na platformie Azure na potrzeby usług w chmurze (certyfikaty usług) i uwierzytelniania za pomocą interfejsu API zarządzania (certyfikaty zarządzania). Ten temat zawiera ogólne omówienie obu typów certyfikatów, sposób tworzenia i wdrażania ich na platformie Azure.

Certyfikaty używane na platformie Azure to certyfikaty x.509 w wersji 3 i mogą być podpisane przez inny zaufany certyfikat lub mogą być podpisywane samodzielnie. Certyfikat z podpisem własnym jest podpisany przez własnego twórcę, dlatego nie jest domyślnie zaufany. Większość przeglądarek umożliwia zignorowanie tego problemu. Certyfikaty z podpisem własnym należy używać tylko podczas opracowywania i testowania usług w chmurze.

Certyfikaty używane przez platformę Azure mogą zawierać klucz publiczny. Certyfikaty mają odcisk palca, który zapewnia sposób identyfikacji ich w sposób jednoznaczny. Ten odcisk palca jest używany w pliku konfiguracji platformy Azure do identyfikowania certyfikatu, którego powinna używać usługa w chmurze.

Uwaga

Usługa Azure Cloud Services nie akceptuje zaszyfrowanego certyfikatu AES256-SHA256.

Co to są certyfikaty usługi?

Certyfikaty usługi są dołączone do usług w chmurze i umożliwiają bezpieczną obustronną komunikację z usługą. Jeśli na przykład wdrożono rolę internetową, należy podać certyfikat, który może uwierzytelnić uwidoczniony punkt końcowy HTTPS. Certyfikaty usług zdefiniowane w definicji usługi są automatycznie wdrażane na maszynie wirtualnej, na którym jest uruchomione wystąpienie roli.

Certyfikat usługi można przekazać na platformę Azure przy użyciu witryny Azure Portal lub klasycznego modelu wdrażania. Certyfikaty usługi są skojarzone z konkretną usługą w chmurze. Są one przypisane do wdrożenia w pliku definicji usługi.

Certyfikaty usług mogą być zarządzane niezależnie od usług i mogą być zarządzane przez różne osoby. Na przykład deweloper może przekazać pakiet usługi, który odwołuje się do certyfikatu przekazanego wcześniej przez menedżera IT na platformę Azure. Menedżer IT może zarządzać tym certyfikatem i odnawiać go (zmieniając konfigurację usługi) bez konieczności przekazywania nowego pakietu usługi. Aktualizowanie bez nowego pakietu usługi jest możliwe, ponieważ nazwa logiczna, nazwa magazynu i lokalizacja certyfikatu znajduje się w pliku definicji usługi, a odcisk palca certyfikatu jest określony w pliku konfiguracji usługi. Aby zaktualizować certyfikat, należy tylko przekazać nowy certyfikat i zmienić wartość odcisku palca w pliku konfiguracji usługi.

Co to są certyfikaty zarządzania?

Certyfikaty zarządzania umożliwiają uwierzytelnianie przy użyciu klasycznego modelu wdrażania. Wiele programów i narzędzi (takich jak program Visual Studio lub zestaw Azure SDK) używa tych certyfikatów do zautomatyzowania konfigurowania i wdrażania różnych usług platformy Azure. Nie są one naprawdę związane z usługami w chmurze.

Ostrzeżenie

Ostrożnie! Te typy certyfikatów umożliwiają każdemu, kto uwierzytelnia się za ich pomocą, aby zarządzać subskrypcją, z którą są skojarzone.

Ograniczenia

Istnieje limit 100 certyfikatów zarządzania na subskrypcję. Istnieje również limit 100 certyfikatów zarządzania dla wszystkich subskrypcji w ramach identyfikatora użytkownika określonego administratora usługi. Jeśli identyfikator użytkownika administratora konta został już użyty do dodawania 100 certyfikatów zarządzania i istnieje potrzeba większej liczby certyfikatów, możesz dodać współadministratora, aby dodać dodatkowe certyfikaty.

Ponadto certyfikaty zarządzania nie mogą być używane z subskrypcjami CSP, ponieważ subskrypcje CSP obsługują tylko model wdrażania usługi Azure Resource Manager i certyfikaty zarządzania używają klasycznego modelu wdrażania. Zapoznaj się z tematem Azure Resource Manager a klasycznym modelem wdrażania i omówieniem uwierzytelniania za pomocą zestawu Azure SDK dla platformy .NET, aby uzyskać więcej informacji na temat opcji subskrypcji programu CSP.

Tworzenie nowego certyfikatu z podpisem własnym

Możesz użyć dowolnego narzędzia dostępnego do utworzenia certyfikatu z podpisem własnym, o ile są one zgodne z następującymi ustawieniami:

  • Certyfikat X.509.

  • Zawiera klucz publiczny.

  • Utworzono dla wymiany kluczy (plik pfx).

  • Nazwa podmiotu musi być zgodna z domeną używaną do uzyskiwania dostępu do usługi w chmurze.

    Nie można uzyskać certyfikatu TLS/SSL dla cloudapp.net (lub dla dowolnej domeny powiązanej z platformą Azure); nazwa podmiotu certyfikatu musi być zgodna z niestandardową nazwą domeny używaną do uzyskiwania dostępu do aplikacji. Na przykład contoso.net, a nie contoso.cloudapp.net.

  • Co najmniej 2048-bitowe szyfrowanie.

  • Tylko certyfikat usługi: certyfikat po stronie klienta musi znajdować się w magazynie certyfikatów osobistych .

Istnieją dwa proste sposoby tworzenia certyfikatu w systemie Windows przy użyciu makecert.exe narzędzia lub usług IIS.

Makecert.exe

To narzędzie jest przestarzałe i nie jest już udokumentowane tutaj. Aby uzyskać więcej informacji, zobacz ten artykuł MSDN.

PowerShell

$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

Uwaga

Jeśli chcesz użyć certyfikatu z adresem IP zamiast domeny, użyj adresu IP w parametrze -DnsName.

Jeśli chcesz użyć tego certyfikatu z portalem zarządzania, wyeksportuj go do pliku cer :

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

Internet Information Services (IIS)

Istnieje wiele stron w Internecie, które opisują, jak to zrobić z usługami IIS. Oto wielki, który znalazłem, że myślę, że dobrze to wyjaśnia.

Linux

W tym artykule opisano sposób tworzenia certyfikatów za pomocą protokołu SSH.

Następne kroki

Przekaż certyfikat usługi do Azure Portal.

Przekaż certyfikat interfejsu API zarządzania do Azure Portal.