Udostępnij za pośrednictwem


Korzystanie z biblioteki mTLS w usłudze Azure Container Apps

Mutual Transport Layer Security (mTLS) to rozszerzenie standardowego protokołu TLS, który zapewnia wzajemne uwierzytelnianie między klientem a serwerem. Usługa Azure Container Apps obsługuje uruchamianie aplikacji z obsługą biblioteki mTLS w celu zapewnienia zwiększonych zabezpieczeń w aplikacjach.

W usłudze Azure Container Apps wszystkie przychodzące żądania przechodzą przez aplikację Envoy przed skierowaniem do docelowej aplikacji kontenera. W przypadku korzystania z biblioteki mTLS klient wymienia certyfikaty z aplikacją Envoy. Każdy z tych certyfikatów jest umieszczany w nagłówku X-Forwarded-Client-Cert , który następnie jest wysyłany do aplikacji.

Aby utworzyć aplikację mTLS w usłudze Azure Container Apps, musisz:

  1. Skonfiguruj usługę Azure Container Apps, aby wymagać certyfikatów klienta z elementów równorzędnych.
  2. Wyodrębnij X.509 certyfikaty z żądań.

W tym artykule opisano sposób obsługi certyfikatów uzgadniania komunikacji równorzędnej mTLS przez wyodrębnienie X.509 certyfikatu z klienta.

Wymaganie certyfikatów klienta

Wykonaj następujące kroki, aby skonfigurować aplikację kontenera w celu wymagania certyfikatów klienta:

  1. Otwórz aplikację kontenera w witrynie Azure Portal.
  2. W obszarze Ustawienia wybierz pozycję Ruch przychodzący.
  3. Wybierz włączone opcji.
  4. W polu Typ ruchu przychodzącego wybierz pozycję HTTP.
  5. W obszarze Tryb certyfikatu klienta wybierz pozycję Wymagaj.
  6. Wybierz Zapisz, aby zastosować zmiany.

Aby uzyskać więcej informacji na temat konfigurowania uwierzytelniania certyfikatu klienta w usłudze Azure Container Apps, zobacz Konfigurowanie uwierzytelniania certyfikatu klienta w usłudze Azure Container Apps.

Wyodrębnianie certyfikatów X.509

Aby wyodrębnić X.509 certyfikaty z nagłówka X-Forwarded-Client-Cert , przeanalizuj wartość nagłówka w kodzie aplikacji. Ten nagłówek zawiera informacje o certyfikacie klienta po włączeniu biblioteki mTLS. Certyfikaty są udostępniane w formacie listy rozdzielanej średnikami, który zawiera skrót, certyfikat i łańcuch.

Poniżej przedstawiono procedurę, którą chcesz wykonać, aby wyodrębnić i przeanalizować certyfikat w aplikacji:

  1. X-Forwarded-Client-Cert Pobierz nagłówek z żądania przychodzącego.
  2. Przeanalizuj wartość nagłówka, aby wyodrębnić szczegóły certyfikatu.
  3. Umieść przeanalizowane certyfikaty do standardowego atrybutu certyfikatu w celu dalszej weryfikacji lub użycia.

Po przeanalizowaniu można zweryfikować certyfikaty i używać ich zgodnie z potrzebami aplikacji.

Przykład

W aplikacjach Java można użyć filtru uwierzytelniania Reaktywnego X.509, aby zamapować informacje o użytkowniku z certyfikatów na kontekst zabezpieczeń. Pełny przykład aplikacji Java z biblioteką mTLS w usłudze Azure Container Apps można znaleźć w temacie mTLS Server Application on Azure Container Apps (Aplikacja serwera mTLS w usłudze Azure Container Apps).