策略模块出错。
策略模块包含管理证书的颁发、续订和吊销的规则集。该策略通过硬编码值、注册设置以及证书模板(如果使用的是企业证书颁发机构 (CA) 的话)创建。策略模块可确定证书申请是否通过批准、被拒或标记为挂起,以用于管理员批准或拒绝。策略模块所监测到的问题可以导致 CA 启动失败或停止运行。
地址策略模块处理错误
MSG_NO_CA_OBJECT, MSG_NO_DOMAIN
MSG_NO_CERT_TYPES
MSG_DOMAIN_INIT
如果这些错误消息中不包含指定信息,请检查并解决该错误之前或之后的任何其他的相关错误。
如不能通过排除相关症状来消除警告,说明策略模块存在问题:
对于非 Microsoft 策略模块,请联系策略模块供应商以获取帮助。
对于 Microsoft 策略模块,请与 Microsoft 客户服务和支持联系。有关详细信息,请参见 http://go.microsoft.com/fwlink/?LinkId=89446。
MSG_NO_CA_OBJECT, MSG_NO_DOMAIN
此错误代码指示证书颁发机构(CA)无法连接到 Active Directory 域服务,或无法找到所需的 Active Directory 信息。域控制器连接失败通常是因网络连接问题或权限问题而引起的。
若要检查并更正潜在的连接问题,请执行以下操作:
确认 Active Directory 服务在每个域控制器上的运行来,以此检查 AD DS 运行是否正常。有关 Active Directory 监控的详细信息,请参见 MOM 的 Active Directory 管理包 ( http://go.microsoft.com/fwlink/?LinkID=95697)。
使用网络诊断工具(例如 Ping 和 Nltest 命令行工具)检查证书颁发机构 (CA) 与 AD DS 之间的网络连接状态是否正常。
使用下面的“确认基本的 AD DS 容器和对象的权限”过程来确认 CA 是否拥有正确的权限访问 AD DS 中的对象和容器。
MSG_NO_CERT_TYPES
该错误代码表示 CA 已在 AD DS 的证书模板容器中查找证书模板的列表,但是无法找到该列表,或列表为空。
若要检查并解决潜在的证书模板问题,请执行以下操作:
使用“确认证书模板配置和可用性”过程来检查关于证书模板的权限和其他设置,以及是否已添加到 CA 中。
MSG_DOMAIN_INIT
该错误代码表示 CA 无法连接到 AD DS。该错误可能是由网络连接问题引起,或多半由权限问题引起。
要检查并解决 DOMAIN_INIT 问题,请执行以下操作:
使用网络诊断工具(例如 Ping 和 Nltest 命令行工具)检查 CA 与 AD DS 之间的网络连接状态是否正常。
使用下面的“确认基本的 AD DS 容器和对象的权限”过程来确认 CA 是否拥有正确的权限访问 AD DS 中的对象和容器。
要执行这些过程,您必须拥有管理 CA 权限,或者您必须被委派了适当的权限。
确认证书模板的配置和可用性
要确认证书模板的配置和可用性,请执行以下操作:
单击“开始”,键入 certtmpl.msc,然后按 ENTER。
选择与错误相关的证书模板。
解决妨碍 CA 颁发基于证书模板的证书的任何安全权限或其他配置问题,然后单击“确定”。
打开证书颁发机构管理单元,并双击 CA 的名称。
右键单击“证书模板”,在单击“新建”,然后单击“要颁发的证书模板”。
选择证书模板,并单击“确定”。
确认基本 AD DS 容器和对象的权限
要确认 CA 具有 AD DS 容器及这些容器内对象的所需权限,请执行以下操作:
在域控制器上,单击“开始”,指向“管理工具”,然后单击“Active Directory 站点和服务”。
单击“Active Directory 站点和服务”[域名]。
在“查看”菜单中,单击“显示服务节点”。
双击 Services,再双击 Public Key Services,然后右键单击下面列出的每个容器或容器内列出的对象,然后单击“属性”。
在“安全”选项卡中,确认所需的权限。
以下是托管 CA 的计算机需要的所有 Active Directory 权限。某些权限是通过证书发行者组中的成员存档的。
注册服务容器。CA 计算机对其自己的对象具有读写访问权限。
AIA 容器。证书发行者组对 AIA 容器具有完全控制访问权限,CA 计算机对其在 AIA 容器内的对象具有完全控制访问权限。
CDP 容器。证书发行者组对 CDP 容器下的每个 CA 容器具有完全控制访问权限,CA 计算机对其容器内的每个证书吊销列表 (CRL) 对象具有完全控制访问权限。
证书颁发机构容器。证书发行者组对此容器内的对象具有完全控制访问权限。
证书模板容器。企业管理员和域管理员组(非 CA 计算机)对此容器及其内部大多数对象具有完全控制权限或读写访问权限。
KRA 容器。CA 计算机对其自己的对象具有完全控制访问权限。
OID 容器。企业管理员和域管理员组(非 CA 计算机)对此容器及其内部容器和对象具有完全控制权限或读写访问权限。
NTAuthCertificates 对象。企业管理员和域管理员组(非 CA 计算机)具有完全控制权限或读写访问权限。
域计算机和域用户容器。证书发行者组对部署了 AD CS 的林中的每个用户和计算机对象的 userCertificate 属性具有读写访问权限。
若要确认策略模块是否可操作的,请执行以下操作:
在托管 CA 的计算机上,单击“开始”,指向“管理工具”,然后单击“服务”。
右键单击“Active Directory 证书服务 (AD CS)”服务,然后单击“重新启动”。
打开事件日志,然后确认该事件日志中不包含与策略模块相关的任何错误。
与策略模块相关的错误如下:
事件 9:源:Microsoft-Windows-CertificationAuthority。“Active Directory 证书服务未启动:无法加载策略模块。”
事件 43:Microsoft-Windows-CertificationAuthority。““%1”策略模块“%2”方法在地址 %4 引起异常。异常代码是 %3。”
事件 44:Microsoft-Windows-CertificationAuthority。““%1”策略模块“%2”方法返回一个错误。%5 返回的状态代码是 %3。%4”
事件 77:Microsoft-Windows-CertificationAuthority。““%1”策略模块记录了以下警告:%2”
事件 78:Microsoft-Windows-CertificationAuthority。““%1”策略模块记录了以下错误:%2”
Target | Microsoft.Windows.CertificateServices.CARole.2016 | ||
Category | EventCollection | ||
Enabled | True | ||
Event_ID | 43 | ||
Event Source | Microsoft-Windows-CertificationAuthority | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | High | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
WriteToCertSvcEvents | WriteAction | Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.43" 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">43</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"/>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="AlertMessageID58c5cd3e83434b31b92618cd2dcd109f"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>