Azure Spring Apps의 애플리케이션에서 TLS/SSL 인증서 사용
참고 항목
기본, 표준 및 엔터프라이즈 계획은 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에서 공용 인증서를 사용하는 방법을 보여 줍니다. 앱은 클라이언트 역할을 하며 인증서 인증을 필요로 하는 외부 서비스에 액세스하거나 암호화 작업을 수행해야 할 수 있습니다.
Azure Spring Apps에서 TLS/SSL 인증서를 관리하도록 하면 인증서와 애플리케이션 코드를 별도로 유지 관리하여 중요한 데이터를 보호할 수 있습니다. 앱 코드는 Azure Spring Apps 인스턴스에 추가한 공용 인증서에 액세스할 수 있습니다.
필수 조건
- Azure Spring Apps에 배포된 애플리케이션입니다. 빠른 시작: Azure Spring Apps에서 첫 번째 애플리케이션 배포를 참조하거나 기존 앱을 사용합니다.
- 확장자가 .crt, .cer, .pem 또는 .der인 인증서 파일 또는 프라이빗 인증서가 있는 Azure Key Vault의 배포된 인스턴스입니다.
인증서 가져오기
Key Vault에서 인증서를 Azure Spring Apps 인스턴스로 가져오거나 로컬 인증서 파일을 사용하도록 선택할 수 있습니다.
Key Vault에서 인증서 가져오기
인증서를 가져오기 전에 키 자격 증명 모음에 Azure Spring Apps 액세스 권한을 부여해야 합니다.
Azure Key Vault는 Azure의 제어 및 데이터 평면에서 작동하는 Azure RBAC(Azure 역할 기반 액세스 제어)와 데이터 평면에서만 작동하는 액세스 정책 모델이라는 두 가지 권한 부여 시스템을 제공합니다.
다음 단계를 사용하여 액세스 권한을 부여합니다.
Azure Portal에 로그인합니다.
키 자격 증명 모음을 선택한 다음, 인증서를 가져올 Key Vault를 선택합니다.
탐색 창에서 액세스 정책을 선택한 다음 만들기를 선택합니다.
인증서 사용 권한을 선택한 다음, 가져오기 및 목록을 선택합니다.
보안 주체에서 Azure Spring Cloud 리소스 공급자를 선택합니다.
검토 + 만들기, 만들기를 차례로 선택합니다.
키 자격 증명 모음에 대한 액세스 권한을 부여한 후 다음 단계에서 인증서를 가져올 수 있습니다.
서비스 인스턴스로 이동합니다.
인스턴스의 왼쪽 탐색 창에서 TLS/SSL 설정을 선택합니다.
공개 키 인증서 섹션에서 Key Vault 인증서 가져오기를 선택합니다.
키 자격 증명 모음 섹션에서 키 자격 증명 모음을 선택하고 인증서 섹션에서 인증서를 선택한 다음, 선택을 선택합니다.
인증서 이름 값을 제공하고 필요한 경우 자동 동기화 사용을 선택한 다음, 적용을 선택합니다. 자세한 내용은 Azure Spring Apps에 기존 사용자 지정 도메인 매핑의 자동 동기화 인증서 섹션을 참조하세요.
인증서를 성공적으로 가져오면 공개 키 인증서 목록에 표시됩니다.
참고 항목
Azure Key Vault 및 Azure Spring Apps 인스턴스는 동일한 테넌트에 있어야 합니다.
로컬 인증서 파일 가져오기
다음 단계에서 로컬에 저장된 인증서 파일을 가져올 수 있습니다.
- 서비스 인스턴스로 이동합니다.
- 인스턴스의 왼쪽 탐색 창에서 TLS/SSL 설정을 선택합니다.
- 공개 키 인증서 섹션에서 공용 인증서 업로드를 선택합니다.
인증서를 성공적으로 가져오면 공개 키 인증서 목록에 표시됩니다.
인증서 로드
Azure Spring Apps의 애플리케이션에 인증서를 로드하려면 다음 단계부터 시작합니다.
- 애플리케이션 인스턴스로 이동합니다.
- 앱의 왼쪽 탐색 창에서 인증서 관리를 선택합니다.
- 앱에서 액세스할 수 있는 인증서를 선택하려면 인증서 추가를 선택합니다.
코드에서 인증서 로드
로드된 인증서는 /etc/azure-spring-cloud/certs/public 폴더에서 사용할 수 있습니다. 다음 Java 코드를 사용하여 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
인증서를 신뢰 저장소에 로드
Java 애플리케이션의 경우 선택한 인증서에 대해 신뢰 저장소에 로드를 선택할 수 있습니다. 인증서는 TLS/SSL 인증에서 서버를 인증하기 위해 Java 기본 TrustStores에 자동으로 추가됩니다.
앱의 다음 로그는 인증서가 성공적으로 로드되었음을 보여 줍니다.
Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>