3.3. 애플리케이션 자체 인증서 지정
3.3.1. HTTPS용 자체 인증서 배포
3.3.1.1. 개요
HTTPS 전송으로 작업할 때 애플리케이션의 인증서는 XML 구성 파일을 사용하여 배포됩니다.
3.3.1.2. 프로세스
HTTPS 전송을 위해 애플리케이션 자체 인증서를 배포하려면 다음 단계를 수행합니다.
Java 키 저장소 형식 CertName
.jks
로 애플리케이션 인증서를 가져옵니다. Java 키 저장소 형식으로 인증서를 생성하는 방법에 대한 자세한 내용은 2.5.3절. “CA를 사용하여 Java 키 저장소에서 서명된 인증서 생성” 을 참조하십시오.참고일부 HTTPS 클라이언트(예: 웹 브라우저)는 서버가 배포된 호스트 이름과 일치하도록 인증서의 ID가 필요한 URL 무결성 검사를 수행합니다. 자세한 내용은 2.4절. “HTTPS 인증서에 대한 특수 요구 사항” 을 참조하십시오.
인증서의 키 저장소 CertName
.jks
를 배포 호스트의 인증서 디렉터리에 복사합니다(예: X509Deploy/certs
).인증서 디렉터리는 관리자 및 기타 권한 있는 사용자만 쓸 수 있는 보안 디렉터리여야 합니다.
관련 XML 구성 파일을 편집하여 인증서 키 저장소 CertName
.jks
의 위치를 지정합니다. 관련 HTTPS 포트 구성에sec:keyManagers
요소를 포함해야 합니다.예를 들어 다음과 같이 클라이언트 포트를 구성할 수 있습니다.
<http:conduit id="{Namespace}PortName.http-conduit"> <http:tlsClientParameters> ... <sec:keyManagers keyPassword="CertPassword"> <sec:keyStore type="JKS" password="KeystorePassword" file="certs/CertName.jks"/> </sec:keyManagers> ... </http:tlsClientParameters> </http:conduit>
keyPassword
속성이 인증서의 개인 키(즉, CertPassword)를 해독하는 데 필요한 암호를 지정하고, truststore에서 JKS 키 저장소 구현을 사용하는유형
특성 사양은 CertName.jks
키 저장소(즉, KeystorePassword)에 액세스하는 데 필요한 암호를 지정합니다.다음과 같이 서버 포트를 구성합니다.
<http:destination id="{Namespace}PortName.http-destination"> <http:tlsServerParameters secureSocketProtocol="TLSv1"> ... <sec:keyManagers keyPassword="CertPassword"> <sec:keyStore type="JKS" password="KeystorePassword" file="certs/CertName.jks"/> </sec:keyManagers> ... </http:tlsServerParameters> </http:destination>
중요주의애플리케이션 인증서가 포함된 디렉터리(예: X509Deploy
/certs/
)는 보안 디렉터리여야 합니다(즉, 관리자가 읽고 쓸 수 있음).주의구성 파일에는 일반 텍스트로 암호가 포함되어 있으므로 XML 구성 파일이 포함된 디렉터리는 보안 디렉터리(즉, 관리자가 읽고 쓸 수 있음)여야 합니다.