다음을 통해 공유


인증 기관 갱신

인증서 서비스CA(인증 기관)의 갱신을 지원합니다. 갱신은 CA가 원래 인증서의 종료 날짜를 초과하여 CA의 수명을 연장하기 위해 새 인증서를 발급하는 것입니다. CA를 인증 기관 MMC 스냅인 내에서 또는 Certutil.exe 도구(-renewCert 명령 포함)를 사용하여 작업으로 갱신할 수 있습니다.

각 갱신은 새 CA 인증서를 생성합니다. 그러나 관리자는 새 퍼블릭/프라이빗 키 쌍을 생성하거나 CA 인증서에 대한 기존 공개/프라이빗 키 쌍을 다시 사용할 수 있습니다. 일관성 및 무결성을 위해 CA 인증서 및 인증서 해지 목록은 CA가 갱신된 후 갱신을 사용할 수 있기 전에 CA에서 발급한 CRL()을 나열합니다. 이를 사용할 수 있도록 인증서 서비스는 CA 인증서, CRL 및 키의 인덱스를 유지 관리합니다.

다양한 CA 갱신 작업 중 CA 인증서 및 CRL의 인덱스 및 접미사 이름은 다음과 같습니다.

수술 CA 인증서 인덱스 CA 인증서 파일 이름 접미사 CRL 및 키 인덱스 CRL 및 키 컨테이너 이름 접미사
원래 CA 설치 0 "" 0 ""
새 키를 사용하여 갱신 1 "(1)" 1 "(1)"
갱신 재사용 키 2 "(2)" 1 "(1)"
갱신 재사용 키 3 "(3)" 1 "(1)"
새 키를 사용하여 갱신 4 "(4)" 4 "(4)"
갱신 재사용 키 5 "(5)" 4 "(4)"
새 키를 사용하여 갱신 6 "(6)" 6 "(6)"
갱신 재사용 키 7 "(7)" 6 "(6)"

 

CA가 설치되면 인증서 인덱스는 0이고 인증서 접미사는 ""(빈 문자열)입니다. 인증서가 갱신될 때마다(키 다시 사용 여부) 인증서 인덱스가 하나씩 증가하고 인증서 파일 이름 접미사가 "(n)" 형식의 문자열이 됩니다. 여기서 n CA 인증서가 갱신된 횟수를 나타냅니다. 첫 번째 갱신 후 인증서 인덱스는 1이고 인증서 파일 이름 접미사는 "(1)"입니다. 두 번째 갱신 후 인증서 인덱스는 2이고 인증서 파일 이름 접미사는 "(2)"입니다.

CA 인증서 인덱스와 접미사는 CA가 갱신될 때마다 하나씩 증가하지만 CRL 및 키 인덱스와 파일 이름 접미사는 갱신 프로세스에 새 퍼블릭/프라이빗 키 쌍이 포함된 경우에만 CA 인증서 인덱스로 설정됩니다. 그렇지 않은 경우 이러한 인덱스와 접미사의 값은 마지막 인덱스와 동일하게 유지됩니다. 갱신하는 동안 관리자는 새 키 쌍이 생성되는지 또는 기존 키 쌍이 사용되는지 여부를 지정합니다. (인증 기관 MMC 스냅인에서 사용자 인터페이스의 옵션은 새 키 쌍 또는 기존 키 쌍을 지정합니다. Certutil.exe 도구에서 명령 certutil -renewCert는 새 키 쌍으로 CA를 갱신하는 반면, 명령 certutil -renewCert ReuseKeys는 기존 키 쌍으로 CA를 갱신할 있습니다.)

CRL 인덱스는 갱신에 새 키 쌍이 사용되는 경우에만 CA 인증서 인덱스로 설정되는 키 인덱스로 직접 연결됩니다. 새 키 쌍을 사용한 첫 번째 갱신 후 CRL 및 키의 인덱스는 1로 설정되고 CRL 및 키 컨테이너 이름 접미사는 "(1)"입니다. 그러나 두 번째 갱신 후에는 CRL 및 키의 인덱스가 1로 유지되고 CRL 및 키 컨테이너 이름 접미사도 "(1)"로 유지됩니다. 이는 두 번째 갱신에서 기존 키 쌍을 사용했으며 각 CA 키 쌍에 대해 하나의 CRL만 발급되었기 때문입니다.

GetCertificateProperty 메서드(ICertServerExitICertServerPolicy 인터페이스 모두에서)를 호출하여 인덱싱된 CA 인증서 및 CRL을 검색할 수 있습니다. CA 인증서 또는 CRL과 관련된 특정 속성을 검색할 때 CA 인증서의 인덱스(0부터 시작하는 인덱스)를 속성 이름에 추가할 수 있습니다. 예를 들어 CA의 세 번째 인증서에 해당하는 CRL 인덱스를 검색하려면 "CRLIndex.2" 속성을 ICertServerPolicy::GetCertificateProperty; 테이블의 경우 검색된 "CRLIndex.2" 속성 값은 1입니다. "CertCount"라는 속성을 사용하여 CA 인증서를 발급한 횟수를 확인할 수 있습니다.

CA 인증서 및 CRL에는 인증서 및 키 인덱스에 대한 정보를 제공하는 확장이 포함되어 있습니다. 확장은 Wincrypt.h에서 "1.3.6.1.4.1.311.21.1" 값을 가진 szOID_CERTSRV_CA_VERSION 정의됩니다. 확장 데이터는 DWORD 값입니다(확장에서 X509_INTEGER 인코딩됨). 낮은 16비트가 인증서 인덱스이고 상위 16비트가 키 인덱스입니다.

CA를 처음 설치하면 인증서 인덱스가 0이고 키 인덱스가 0으로 생성됩니다. CA 인증서를 갱신하면 인증서 인덱스가 증가합니다. 키를 갱신에 다시 사용하면 키 인덱스가 이전 키 인덱스와 동일합니다. 키를 다시 사용하지 않으면 키 인덱스가 새 인증서 인덱스와 일치합니다.

ICertServerPolicy::GetCertificateProperty

ICertServerExit::GetCertificateProperty