인증서 서비스가 NTAuth 저장소에서 CA 인증서를 찾을 수 없습니다.
AD CS(Active Directory 인증서 서비스)에는 AD DS(Active Directory 도메인 서비스)의 특정 개체에 대해 적어도 읽기 권한이 필요하며 경우에 따라서는 쓰기 권한이 필요합니다. 이러한 Active Directory 개체에 액세스하지 못하면 AD CS가 시작되지 않을 수 있습니다.
AD CS가 CA 인증서를 NTAuth 저장소에 게시할 수 있는지 확인
이 문제를 해결하려면 다음과 같이 합니다.
NTAuth 저장소에 대한 권한을 확인합니다.
NTAuth 저장소를 확인하고 필요한 경우 CA(인증 기관) 인증서를 수동으로 게시합니다.
NTAuth 저장소에 인증서를 게시하기 위해 CA 인증서를 찾는 데 문제가 있는 경우 NTAuth 저장소에 인증서를 게시하기 전에 "컴퓨터에서 CA 인증서 파일 찾기" 섹션의 절차를 수행합니다.
이러한 절차를 수행하려면 CA 관리 권한이 있거나 적절한 권한을 위임받아야 합니다.
NTAuth 저장소 권한 확인
NTAuth 컨테이너에 대한 CA의 권한을 확인하려면:
도메인 컨트롤러에서 시작을 클릭한 다음 관리 도구를 가리키고 Active Directory 사이트 및 서비스를 클릭합니다.
Active Directory 사이트 및 서비스 [도메인 이름]을 클릭합니다. 여기서 [도메인 이름]은 사용자 도메인 이름입니다.
보기 메뉴에서 서비스 노드 표시를 클릭합니다.
Services 및 Public Key Services를 차례로 두 번 클릭하고 NTAuthCertificates를 마우스 오른쪽 단추로 클릭한 다음 속성을 클릭합니다.
보안 탭을 클릭한 다음 CA를 호스트하는 컴퓨터에 읽기 권한이 있는지 확인합니다.
NTAuth 저장소의 내용 확인
AD DS(Active Directory 도메인 서비스)에서 NTAuth 저장소의 내용을 확인하려면:
명령 프롬프트에서 certutil -viewstore ldap:///CN=NTAuthCertificates,CN=Public Key Services,CN=Services,CN=Configuration,DC=<contoso>,DC=<com>을 입력하고 <Enter> 키를 누릅니다. <contoso> 및 <com>을 Active Directory 루트 도메인의 네임스페이스로 바꿉니다
CA 인증서가 출력에 나열되지 않으면 certutil -dspublish <cert.cer> ntauthca 명령을 입력하고 <Enter> 키를 눌러 CA 인증서를 수동으로 추가합니다. <cert.cer>을 CA 인증서 파일로 바꿉니다.
컴퓨터에서 CA 인증서 파일 찾기
로컬 파일 시스템에서 CA 인증서 파일을 찾으려면:
명령 프롬프트 창을 엽니다.
certutil -getreg CA\CACertPublicationURLs를 입력하고 Enter 키를 누릅니다.
기본적으로 이 파일은 %systemroot%\system32\certsrv\certenroll에 저장됩니다.
Target | Microsoft.Windows.CertificateServices.CARole.2016 |
Category | EventCollection |
Enabled | True |
Event_ID | 93 |
Event Source | Microsoft-Windows-CertificationAuthority |
Alert Generate | False |
Remotable | True |
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
WriteToCertSvcEvents | WriteAction | Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.93" Enabled="true" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.2016" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">93</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-CertificationAuthority</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectEvent"/>
<WriteAction ID="WriteToCertSvcEvents" TypeID="Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher"/>
</WriteActions>
</Rule>