Azure Spring Apps의 애플리케이션에서 TLS/SSL 인증서 사용

참고 항목

Azure Spring Apps는 Azure Spring Cloud 서비스의 새 이름입니다. 서비스에 새 이름이 지정되었지만, 자산을 업데이트하는 동안 스크린샷, 비디오, 다이어그램과 같은 일부 위치에서는 당분간 이전 이름이 표시됩니다.

이 문서의 적용 대상: ✔️ 기본/표준 ✔️ 엔터프라이즈

이 문서에서는 애플리케이션에 대해 Azure Spring Apps에서 공용 인증서를 사용하는 방법을 보여 줍니다. 앱은 클라이언트 역할을 하며 인증서 인증을 필요로 하는 외부 서비스에 액세스하거나 암호화 작업을 수행해야 할 수 있습니다.

Azure Spring Apps에서 TLS/SSL 인증서를 관리하도록 하면 인증서와 애플리케이션 코드를 별도로 유지 관리하여 중요한 데이터를 보호할 수 있습니다. 앱 코드는 Azure Spring Apps 인스턴스에 추가한 공용 인증서에 액세스할 수 있습니다.

필수 조건

인증서 가져오기

Key Vault에서 인증서를 Azure Spring Apps 인스턴스로 가져오거나 로컬 인증서 파일을 사용하도록 선택할 수 있습니다.

Key Vault에서 인증서 가져오기

다음 단계에서 인증서를 가져오기 전에 Azure Spring Apps에 키 자격 증명 모음에 대한 액세스 권한을 부여해야 합니다.

  1. Azure Portal에 로그인합니다.

  2. 키 자격 증명 모음을 선택한 다음, 인증서를 가져올 Key Vault를 선택합니다.

  3. 왼쪽 탐색 창에서 액세스 정책을 선택한 다음 만들기를 선택합니다.

  4. 인증서 사용 권한을 선택한 다음, 가져오기목록을 선택합니다.

    권한 창이 표시되고 권한 가져오기 및 나열 권한이 강조 표시된 액세스 정책 만들기 페이지를 보여 주는 Azure Portal의 스크린샷

  5. 주체에서 Azure Spring Cloud 리소스 공급자를 선택합니다.

    Azure Spring Cloud 리소스 공급자가 강조 표시된 액세스 정책 만들기 페이지 보안 주체 탭을 보여 주는 Azure Portal의 스크린샷.

  6. 검토 + 만들기, 만들기를 차례로 선택합니다.

키 자격 증명 모음에 대한 액세스 권한을 부여한 후 다음 단계에서 인증서를 가져올 수 있습니다.

  1. 서비스 인스턴스로 이동합니다.

  2. 인스턴스의 왼쪽 탐색 창에서 TLS/SSL 설정을 선택합니다.

  3. 공개 키 인증서 섹션에서 Key Vault 인증서 가져오기를 선택합니다.

  4. 키 자격 증명 모음 섹션에서 키 자격 증명 모음을 선택하고 인증서 섹션에서 인증서를 선택한 다음, 선택을 선택합니다.

  5. 인증서 이름 값을 제공하고 필요한 경우 자동 동기화 사용을 선택한 다음, 적용을 선택합니다. 자세한 내용은 Azure Spring Apps에 기존 사용자 지정 도메인 매핑자동 동기화 인증서 섹션을 참조하세요.

인증서를 성공적으로 가져오면 공개 키 인증서 목록에 표시됩니다.

참고 항목

Azure Key Vault 및 Azure Spring Apps 인스턴스는 동일한 테넌트에 있어야 합니다.

로컬 인증서 파일 가져오기

다음 단계에서 로컬에 저장된 인증서 파일을 가져올 수 있습니다.

  1. 서비스 인스턴스로 이동합니다.
  2. 인스턴스의 왼쪽 탐색 창에서 TLS/SSL 설정을 선택합니다.
  3. 공개 키 인증서 섹션에서 공용 인증서 업로드를 선택합니다.

인증서를 성공적으로 가져오면 공개 키 인증서 목록에 표시됩니다.

인증서 로드

Azure Spring Apps의 애플리케이션에 인증서를 로드하려면 다음 단계부터 시작합니다.

  1. 애플리케이션 인스턴스로 이동합니다.
  2. 앱의 왼쪽 탐색 창에서 인증서 관리를 선택합니다.
  3. 앱에서 액세스할 수 있는 인증서를 선택하려면 인증서 추가를 선택합니다.

인증서 추가 단추가 강조 표시된 인증서 관리 페이지를 보여주는 Azure Portal의 스크린샷.

코드에서 인증서 로드

로드된 인증서는 /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 애플리케이션의 경우 선택한 인증서에 대해 신뢰 저장소에 로드를 선택할 수 있습니다. 인증서는 SSL 인증에서 서버를 인증하기 위해 Java 기본 TrustStores에 자동으로 추가됩니다.

앱의 다음 로그는 인증서가 성공적으로 로드되었음을 보여 줍니다.

Load certificate from specific path. alias = <certificate alias>, thumbprint = <certificate thumbprint>, file = <certificate name>

다음 단계