Använda TLS/SSL-certifikat i ditt program i Azure Spring Apps
Kommentar
Basic-, Standard- och Enterprise-planerna kommer att vara inaktuella från och med mitten av mars 2025, med en 3-årig pensionsperiod. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i meddelandet om azure Spring Apps-pensionering.
Standardförbrukningen och den dedikerade planen kommer att vara inaktuell från och med den 30 september 2024, med en fullständig avstängning efter sex månader. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i Migrera Azure Spring Apps Standard-förbrukning och dedikerad plan till Azure Container Apps.
Den här artikeln gäller för: ✔️ Basic/Standard ✔️ Enterprise
Den här artikeln visar hur du använder offentliga certifikat i Azure Spring Apps för ditt program. Din app kan fungera som en klient och komma åt en extern tjänst som kräver certifikatautentisering, eller så kan den behöva utföra kryptografiska uppgifter.
När du låter Azure Spring Apps hantera dina TLS/SSL-certifikat kan du underhålla certifikaten och programkoden separat för att skydda känsliga data. Din appkod kan komma åt de offentliga certifikat som du lägger till i din Azure Spring Apps-instans.
Förutsättningar
- Ett program som distribuerats till Azure Spring Apps. Se Snabbstart: Distribuera ditt första program i Azure Spring Apps eller använd en befintlig app.
- Antingen en certifikatfil med .crt, .cer, .pem eller .der-tillägget eller en distribuerad instans av Azure Key Vault med ett privat certifikat.
Importera ett certifikat
Du kan välja att importera certifikatet till din Azure Spring Apps-instans från antingen Key Vault eller använda en lokal certifikatfil.
Importera ett certifikat från Key Vault
Du måste ge Azure Spring Apps åtkomst till ditt nyckelvalv innan du importerar certifikatet.
Azure Key Vault erbjuder två auktoriseringssystem: rollbaserad åtkomstkontroll i Azure (Azure RBAC), som körs på Azures kontroll- och dataplan, och åtkomstprincipmodellen, som endast fungerar på dataplanet.
Använd följande steg för att bevilja åtkomst:
Logga in på Azure-portalen.
Välj Nyckelvalv och välj sedan det nyckelvalv som du importerar certifikatet från.
I navigeringsfönstret väljer du Åtkomstprinciper och sedan Skapa.
Välj Certifikatbehörigheter och välj sedan Hämta och Lista.
Under Huvudnamn väljer du Azure Spring Cloud-resursprovider.
Välj Granska + skapa och välj sedan Skapa.
När du har beviljat åtkomst till nyckelvalvet kan du importera certifikatet med hjälp av följande steg:
Gå till tjänstinstansen.
I det vänstra navigeringsfönstret i din instans väljer du TLS/SSL-inställningar.
Välj Importera Key Vault-certifikat i avsnittet Offentliga nyckelcertifikat .
Välj ditt nyckelvalv i avsnittet Nyckelvalv , välj certifikatet i avsnittet Certifikat och välj sedan Välj.
Ange ett värde för Certifikatnamn, välj Aktivera automatisk synkronisering om det behövs och välj sedan Använd. Mer information finns i avsnittet Certifikat för automatisk synkronisering i Mappa en befintlig anpassad domän till Azure Spring Apps.
När du har importerat certifikatet visas det i listan över offentliga nyckelcertifikat.
Kommentar
Azure Key Vault- och Azure Spring Apps-instanserna bör finnas i samma klientorganisation.
Importera en lokal certifikatfil
Du kan importera en certifikatfil som lagras lokalt med hjälp av följande steg:
- Gå till tjänstinstansen.
- I det vänstra navigeringsfönstret i din instans väljer du TLS/SSL-inställningar.
- Välj Ladda upp offentligt certifikat i avsnittet Certifikat för offentlig nyckel.
När du har importerat certifikatet visas det i listan över offentliga nyckelcertifikat.
Läsa in ett certifikat
Om du vill läsa in ett certifikat i ditt program i Azure Spring Apps börjar du med följande steg:
- Gå till programinstansen.
- I det vänstra navigeringsfönstret i appen väljer du Certifikathantering.
- Välj Lägg till certifikat för att välja certifikat som är tillgängliga för appen.
Läsa in ett certifikat från kod
Dina inlästa certifikat är tillgängliga i mappen /etc/azure-spring-cloud/certs/public . Använd följande Java-kod för att läsa in ett offentligt certifikat i ett program i Azure Spring Apps.
CertificateFactory factory = CertificateFactory.getInstance("X509");
FileInputStream is = new FileInputStream("/etc/azure-spring-cloud/certs/public/<certificate name>");
X509Certificate cert = (X509Certificate) factory.generateCertificate(is);
// use the loaded certificate
Läs in ett certifikat i förtroendearkivet
För ett Java-program kan du välja Läs in i förtroendearkivet för det valda certifikatet. Certifikatet läggs automatiskt till i Javas standardförtroendearkiv för att autentisera en server i TLS/SSL-autentisering.
Följande logg från din app visar att certifikatet har lästs in.
Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>