애플리케이션에 대한 수신-앱 TLS 사용
참고 항목
기본, 표준 및 엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.
표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.
이 문서는 기본 ✅ 표준 ✅ 엔터프라이즈에 ❎ 적용됩니다.
참고 항목
기본 계획에서는 이 기능을 사용할 수 없습니다.
이 문서에서는 Azure Spring Apps의 보안 통신을 설명합니다. 또한 이 문서에서는 수신-앱 SSL/TLS를 사용하여 수신 컨트롤러에서 HTTPS를 지원하는 애플리케이션으로 향하는 트래픽을 보호하는 방법을 설명합니다.
다음 그림에서는 Azure Spring Apps의 전반적인 보안 통신 지원을 보여줍니다.
Azure Spring Apps 내 보안 통신 모델
이 섹션에서는 위 개요 다이어그램에 표시된 보안 통신 모델을 설명합니다.
클라이언트에서 Azure Spring Apps의 애플리케이션으로의 클라이언트 요청은 수신 컨트롤러로 들어옵니다. 요청은 HTTP 또는 HTTPS일 수 있습니다. Microsoft Azure TLS 발급 CA에서 수신 컨트롤러에서 반환된 TLS 인증서를 발급합니다.
앱이 기존 사용자 지정 도메인에 매핑되고 HTTPS로만 구성된 경우 수신 컨트롤러에 대한 요청은 HTTPS만 될 수 있습니다. 수신 컨트롤러에서 반환한 TLS 인증서는 해당 사용자 지정 도메인의 SSL 바인딩 인증서입니다. 사용자 지정 도메인의 서버 쪽 SSL/TLS 확인은 수신 컨트롤러에서 수행됩니다.
수신-앱 TLS에서 수신 컨트롤러와 Azure Spring Apps에 있는 애플리케이션 간의 보안 통신을 제어합니다. 포털 또는 CLI를 통해 통신을 제어할 수도 있으며 이 문서의 뒷부분에서 이 내용을 설명합니다. 수신-앱 TLS를 사용하지 않으면 수신 컨트롤러와 Azure Spring Apps에 있는 앱 간의 통신은 HTTP입니다. 수신-앱 TLS를 사용하면 통신은 HTTPS이며 클라이언트와 수신 컨트롤러 간의 통신과 관련이 없습니다. 수신-앱 TLS는 통신을 암호화하므로 수신 컨트롤러는 앱에서 반환된 인증서를 확인하지 않습니다.
앱과 Azure Spring Apps 서비스 간의 통신은 항상 HTTPS이며 Azure Spring Apps에서 처리됩니다. 이러한 서비스에는 구성 서버, 서비스 레지스트리 및 Eureka 서버가 포함됩니다.
애플리케이션 간의 통신을 관리합니다. Azure Spring Apps 기능을 활용하여 애플리케이션의 신뢰 저장소에 인증서를 로드할 수도 있습니다. 자세한 내용은 애플리케이션에서 TLS/SSL 인증서 사용을 참조하세요.
애플리케이션과 외부 서비스 간의 통신을 관리합니다. 개발 노력이 줄어들도록 Azure Spring Apps를 사용하면 공용 인증서를 관리하고 애플리케이션의 신뢰 저장소에 로드할 수 있습니다. 자세한 내용은 애플리케이션에서 TLS/SSL 인증서 사용을 참조하세요.
애플리케이션에 대한 수신-앱 TLS 사용
또한 다음 섹션에서는 수신-앱 SSL/TLS를 사용하여 수신 컨트롤러에서 HTTPS를 지원하는 애플리케이션으로 향하는 트래픽을 보호하는 방법을 보여줍니다.
필수 조건
- 배포된 Azure Spring Apps 인스턴스입니다. Azure CLI를 통해 배포에 대한 빠른 시작을 수행하여 시작하세요.
- 수신-앱 TLS가 익숙하지 않으면 엔드투엔드 TLS 샘플을 참조하세요.
- 필요한 인증서를 Spring Boot 앱에 안전하게 로드하려면 spring-cloud-azure-starter-keyvault-certificates를 사용하면 됩니다.
기존 앱에서 수신-앱 TLS 사용
앱에서 수신-앱 TLS를 사용하거나 사용하지 않으려면 az spring app update --enable-ingress-to-app-tls
명령을 사용합니다.
az spring app update --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
az spring app update --enable-ingress-to-app-tls false -n app_name -s service_name -g resource_group_name
사용자 지정 도메인을 빌드할 때 수신-앱 TLS를 사용합니다.
앱에서 수신-앱 TLS를 사용하거나 사용하지 않으려면 az spring app custom-domain update --enable-ingress-to-app-tls
또는 az spring app custom-domain bind --enable-ingress-to-app-tls
명령을 사용합니다.
az spring app custom-domain update --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
az spring app custom-domain bind --enable-ingress-to-app-tls -n app_name -s service_name -g resource_group_name
Azure Portal을 사용하여 수신-앱 TLS 사용
Azure Portal에서 수신-앱 TLS를 사용하려면 먼저 앱을 만든 다음, 이 기능을 사용합니다.
- 평소처럼 포털에서 앱을 만듭니다. 포털에서 해당 앱으로 이동합니다.
- 왼쪽 탐색 창에서 설정 그룹이 나올 때까지 아래로 스크롤합니다.
- 수신-앱 TLS를 선택합니다.
- 수신-앱 TLS를 예로 전환합니다.
수신-앱 TLS 상태 확인
az spring app show
명령을 사용하여 enableEndToEndTls
값을 확인합니다.
az spring app show -n app_name -s service_name -g resource_group_name