현재 Apigee Edge 문서가 표시되고 있습니다.
Apigee X 문서로 이동 정보
이 문서에서는 키 저장소 또는 트러스트 저장소에 인증서를 업로드하기 전에 인증서의 용도를 확인하는 방법을 설명합니다. 이 프로세스는 검증을 위해 OpenSSL을 사용하며 OpenSSL을 사용할 수 있는 모든 환경에 적용할 수 있습니다.
TLS 인증서는 일반적으로 하나 이상의 용도로 발급되며 이를 사용할 수 있습니다. 일반적으로 인증서에 포함된 공개 키를 사용할 수 있는 작업 수를 제한하기 위해 이러한 작업을 수행합니다. 인증서의 용도는 다음과 같은 인증서 확장에서 사용할 수 있습니다.
- 키 사용
- 확장된 키 사용
키 사용
키 사용 확장 프로그램은 인증서에 포함된 키의 용도 (예: 암호화, 서명 또는 인증서 서명)를 정의합니다. 항목 인증에 공개 키가 사용되는 경우 인증서 확장 프로그램에 키 사용 디지털 서명이 포함되어야 합니다.
인증 기관 (CA) 프로세스를 사용하여 만든 TLS 인증서에 사용할 수 있는 다양한 키 사용 확장 프로그램은 다음과 같습니다.
- 디지털 서명
- 부인 방지
- 키 암호화
- 데이터 암호화
- 키 일치
- 인증서 서명
- CRL 서명
- 암호화만
- 해독만
이러한 키 사용 확장 프로그램에 대한 자세한 내용은 RFC5280, 키 사용을 참조하세요.
확장된 키 사용
이 확장 프로그램은 키 사용 확장에 표시된 기본 목적 외에 인증된 공개 키 용도 하나 이상의 목적을 나타냅니다. 일반적으로 이 확장자는 최종 법인 인증서에만 표시됩니다.
일반적인 확장 키 사용 확장 프로그램은 다음과 같습니다.
-
TLS Web server authentication
-
TLS Web client authentication
-
anyExtendedKeyUsage
확장 키는 중요하거나 중요하지 않음일 수 있습니다.
- 확장자가 중요한 경우 인증서는 표시된 목적이나 목적으로만 사용해야 합니다. 인증서가 다른 용도로 사용되면 CA의 정책을 위반하는 것입니다.
- 확장 프로그램이 중요하지 않은 경우 키의 의도된 목적이나 목적이 정보 제공임을 나타내며 CA가 키 사용을 표시된 용도로 제한함을 암시하지 않습니다. 하지만 인증서를 사용하는 애플리케이션에서는 특정 용도를 표시해야 인증서가 허용될 수 있습니다.
인증서에 키 사용 필드와 확장 키 사용 필드가 모두 필수로 포함된 경우 두 필드가 모두 독립적으로 처리되어야 하며, 키 사용 값을 둘 다 충족하는 목적으로만 인증서를 사용할 수 있습니다. 하지만 두 키 사용 값을 모두 충족할 수 있는 목적이 없다면 인증서를 어떠한 용도로도 사용해서는 안 됩니다.
인증서를 조달할 때 클라이언트 또는 서버 인증서의 요구사항을 충족하도록 적절한 키 사용이 정의되어 있는지 확인해야 합니다. 그렇지 않으면 TLS 핸드셰이크가 실패합니다.
Apigee Edge에서 사용되는 인증서에 권장되는 키 사용량 및 확장 키 사용입니다.
목적 |
키 사용
(필수) |
확장 키 사용
(선택사항) |
Apigee Edge 가상 호스트의 키 저장소에 사용되는 서버 항목 인증서 |
|
TLS 웹 서버 인증 |
Apigee Edge 가상 호스트의 트러스트 저장소에 사용되는 클라이언트 항목 인증서 |
|
TLS 웹 클라이언트 인증 |
Apigee Edge 대상 서버의 트러스트 저장소에 사용되는 서버 항목 인증서 |
|
TLS 웹 서버 인증 |
Apigee Edge 대상 서버의 키 저장소에 사용되는 클라이언트 엔티티 인증서 |
|
TLS 웹 클라이언트 인증 |
중간 인증서 및 루트 인증서 |
|
시작하기 전에
이 문서의 단계를 수행하기 전에 다음 주제를 이해해야 합니다.
- 인증서 체인에 대해 잘 모른다면 신뢰 체인을 읽어보세요.
- OpenSSL 라이브러리에 익숙하지 않으면 OpenSSL을 읽어보세요.
- 키 사용 확장 및 확장 키 사용에 대한 자세한 내용은 RFC5280을 참조하세요.
- 이 가이드의 명령줄 예를 사용하려면 최신 버전의 OpenSSL 클라이언트를 설치하거나 업데이트합니다.
- 인증서가 PEM 형식인지 확인하고 그렇지 않은 경우 인증서를 PEM 형식으로 변환합니다.
인증서 용도 검증
이 섹션에서는 인증서의 목적을 확인하는 데 사용되는 단계를 설명합니다.
- OpenSSL이 있는 서버에 로그인합니다.
-
인증서의 키 사용량을 가져오려면 다음 OpenSSL 명령어를 실행합니다.
openssl x509 -noout -ext keyUsage < certificate
여기서 certificate은 인증서 이름입니다.
샘플 출력
openssl x509 -noout -ext keyUsage < entity.pem X509v3 Key Usage: critical Digital Signature, Key Encipherment openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
키 사용이 필수인 경우 다음과 같이 중요한 키로 정의됩니다.
openssl x509 -noout -ext keyUsage < intermediate.pem X509v3 Key Usage: critical Certificate Sign, CRL Sign
-
다음 명령어를 실행하여 인증서의 확장 키 사용량을 가져옵니다.
확장 키 사용이 중요한 것으로 정의되지 않은 경우 이는 필수가 아닌 권장사항입니다.
openssl x509 -noout -ext extendedKeyUsage < certificate
여기서 certificate은 인증서 이름입니다.
샘플 출력
openssl x509 -noout -ext extendedKeyUsage < entity.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication openssl x509 -noout -ext extendedKeyUsage < intermediate.pem X509v3 Extended Key Usage: TLS Web Server Authentication, TLS Web Client Authentication