已拒絕憑證要求。
憑證授權單位 (CA) 的其中一個主要功能是評估用戶端的憑證要求,並且如果符合預先定義的準則,則對該用戶端發行憑證。為了成功註冊憑證,一些要素必須在提交要求前準備就緒,包括具有有效 CA 憑證的 CA;正確設定的憑證範本、用戶端帳戶和憑證要求;以及用戶端提交要求至 CA 的方式,要求必須經過驗證並安裝發行的憑證。
移除阻止憑證要求獲得核准的情況
鏈結建立中的問題是憑證要求失敗的常見原因。使用下面的程序來驗證憑證授權單位 (CA) 的憑證鏈結,並修正確認的任何問題:
確認 Active Directory 網域服務 (AD DS) 中的使用者帳戶資訊。
確認憑證範本資訊。
確認 CA 的憑證鏈結。
檢查最新的憑證撤銷清單 (CRL)。
發佈新的 CRL。
如果沒有解決問題,請檢查並解決下列領域中的問題:
CA 的失敗要求佇列
AD DS 連線
完成憑證要求所需的簽章可能無法使用。如果是這種情況:
讓具有登錄授權單位憑證的其他使用者簽署憑證要求。
修改憑證範本以要求較少的登錄授權單位簽章。
再次提交憑證要求。
確認 AD DS 中的使用者帳戶資訊
若要執行此程序,您必須有 Domain Admins 的成員資格,或者必須已被委派適當的權限。
若要確認使用者帳戶資訊:
在網域控制站上按一下 [開始],指向 [系統管理工具],然後按一下 [Active Directory 使用者和電腦]。
在主控台樹狀目錄中,選取使用者帳戶所在的網域和使用者群組。
如果使用者帳戶存在,在該帳戶上按一下滑鼠右鍵,然後按一下 [內容],並確認使用者擁有正確設定的網域名稱系統 (DNS) 名稱。
確認憑證範本資訊
若要執行此程序,您必須擁有管理 CA 權限,或者必須已被委派適當的權限。
若要確認憑證範本資訊:
在主控 CA 的電腦上,按一下 [開始],輸入 certtmpl.msc 並按 ENTER。
在要進行疑難排解的憑證範本上按一下滑鼠右鍵,並確認使用者或群組擁有註冊依據此範本的憑證的權限。
確認 CA 的憑證鏈結
若要驗證 CA 的鏈結:
按一下 [開始] 並輸入 mmc,然後按 ENTER。
當 [使用者帳戶控制] 對話方塊出現時,請確認其中顯示的動作即是您要執行的動作,然後按一下 [繼續]。
在 [檔案] 功能表上,依序按一下 [新增/移除嵌入式管理單元]、[憑證] 和 [新增]。
依序按一下 [電腦帳戶] 和 [下一步]。
選取主控 CA 的電腦,然後依序按一下 [完成] 和 [確定]。
選取憑證鏈結中的每個 CA 憑證,然後按一下 [檢視憑證]。
按一下 [詳細資料] 索引標籤,然後按一下 [複製到檔案] 以啟動 [憑證匯出精靈]。以 .cer 副檔名儲存每個憑證。
開啟命令提示字元並針對每個 CA 憑證執行以下命令:certutil -urlfetch -verify <CAcert.cer>,然後按 ENTER。將 <CAcert.cer> 取代為您在步驟 7 中儲存之 CA 憑證檔案的名稱。
針對 CA 發行的終端實體 (使用者或電腦) 憑證的憑證檔案使用相同的命令,以確認 CA 本身及其鏈結的 CRL。
解決命令列輸出中確認的任何問題。
產生和發佈新的 CRL
如果命令列輸出指示 CA 的 CRL 已過期,則在 CA 上產生新的基本及差異 CRL,並將他們複製到所需的位置。您可能需要重新啟動離線 CA 才可以執行這項作業。
在 CA 上檢查目前發佈的 CRL。依預設,CA 會在資料夾 %windir%\System32\CertSrv\CertEnroll 中建立 CRL。如果此位置上的 CRL 目前已過期或無效,您可以使用以下程序來發佈新的 CRL。
若要使用 [憑證授權單位] 嵌入式管理單元發佈新的 CRL:
在主控 CA 的電腦上,按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
選取 CA,然後在 CA 名稱底下展開資料夾。
在 [已撤銷的憑證] 資料夾上按一下滑鼠右鍵。
按一下 [所有工作],然後按一下 [發佈]。
您也可以從命令提示字元產生和發佈 CRL。
若要使用 Certutil 命令列工具發佈 CRL:
在主控 CA 的電腦上,按一下 [開始],輸入 cmd 並按 ENTER。
輸入 certutil -CRL 並按 ENTER。
如果 CRL 被確認為無法使用,但 CA 上的本機目錄中存在有效的 CRL,則確認 CA 可連線至 CRL 發佈點,然後使用之前的步驟重新產生和發佈 CRL。
可使用下面的命令手動將 CRL 發佈至 Active Directory 網域服務 (AD DS):
certutil -dspublish"<crlname.crl>" ldap:///CN=<CA 名稱>,CN=<CA 主機名稱>,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=<contoso>,DC=<com>?certificateRevocationList?base?objectClass=cRLDistributionPoint
以 CRL 檔案的名稱取代 crlname.crl,並以您的 CA 名稱和執行 CA 之主機的名稱取代 <CA 名稱> 和 <CA 主機名稱>,然後以您 Active Directory 網域的命名空間取代 <contoso> 和 <com>。
確認所設定的 CRL 發佈點
檢查所有已設定的 CRL 發佈點,以確認發佈成功,並且新的 CRL 可在網路上使用。
若要執行此程序,您必須擁有管理 CA 權限,或者必須已被委派適當的權限。
若要使用 [憑證授權單位] 嵌入式管理單元檢查已設定的 CRL 發佈點:
在主控 CA 的電腦上,按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
在 CA 名稱上按一下滑鼠右鍵,然後按一下 [內容]。
按一下 [延伸] 索引標籤。
檢閱所設定的 CRL 發佈點並確認名稱有效。
若要使用 Certutil 檢查所設定的 CRL 發佈點 URL:
在 CA 上開啟命令提示字元視窗。
輸入 certutil -getreg ca\crlpublicationurls 並按 ENTER。
檢閱所設定的 CRL 發佈點並確認名稱有效。
檢查 CA 上失敗的要求佇列
若要執行此程序,您必須擁有管理 CA 權限,或者必須已被委派適當的權限。
若要使用 [憑證授權單位] 嵌入式管理單元檢查 CA 上失敗的要求佇列:
在主控 CA 的電腦上,按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
按一下 [失敗的要求]。
尋找出現事件時或接近的時間內提交的失敗要求,並檢查 [要求整理訊息]、[要求狀態碼] 和 [要求者名稱] 等欄位,以取得其他診斷資訊。
若要使用 Certutil 檢查失敗的要求:
在主控 CA 的電腦上,按一下 [開始],鍵入 cmd 並按 ENTER。
鍵入 certutil -view LogFail 並按 ENTER。
鍵入 certutil -view -restrict requestID="<nnn>",然後按 ENTER。將 <nnn> 取代為 LogFail 命令輸出中的其中一個失敗要求的要求 ID。
確認 AD DS 連線
若要確認 Active Directory 憑證服務 (AD CS) 對 AD DS 的連線:
在 CA 上開啟命令提示字元視窗。
輸入 ping <server_FQDN>,其中 server_FQDN 是網域控制站的完整網域名稱 (FQDN) (例如,server1.contoso.com),然後按 ENTER。
如果 ping 執行成功,您將會收到與下列類似的回覆:
回覆自 IP_address: 位元組=32 時間=3ms TTL=59
回覆自 IP_address: 位元組=32 時間=20ms TTL=59
回覆自 IP_address: 位元組=32 時間=3ms TTL=59
回覆自 IP_address:位元組=32 時間=6ms TTL=59 3
在命令提示字元中,輸入 ping <IP_address> (其中 IP_address 是網域控制站的 IP 位址),然後按 ENTER。
如果您可以使用 IP 位址順利連線至網域控制站,但使用 FQDN 卻失敗,這表示網域名稱系統 (DNS) 主機名稱解析可能有問題。如果您無法使用 IP 位址順利連線至網域控制站,這表示網路連線、防火牆設定或網際網路通訊協定安全性 (IPsec) 設定可能有問題。
發行其他登錄授權單位憑證
若要執行此程序,您必須是主控 CA 的電腦上本機 Administrators 群組的成員,或者必須已被委派適當的權限。
若要發行其他登錄授權單位憑證:
在主控 CA 的電腦上,按一下 [開始],輸入 certtmpl.msc 並按 ENTER。
在 [詳細資料] 窗格中,在登錄授權單位憑證範本上按一下滑鼠右鍵,然後按一下 [內容]。
在 [安全性] 索引標籤上,新增您要對其發行登錄授權單位憑證的使用者或群組的名稱。
在群組或使用者名稱中,按一下其中一個新物件,然後在 [允許] 欄位底下的 [物件名稱的權限] 上,選取 [讀取] 和 [註冊] 核取方塊。
對每個新物件重複上一個步驟,然後按一下 [確定]。
按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
按兩下 CA 的名稱。
在「憑證範本」容器上按一下滑鼠右鍵,然後依序按一下 [新增] 和 [要發行的憑證範本]。
選取憑證範本,然後按一下 [確定]。
修改憑證範本簽署需求
若要執行此程序,您必須擁有管理 CA 權限,或者必須已被委派適當的權限。
若要修改憑證範本簽署需求:
在主控 CA 的電腦上,按一下 [開始],輸入 certtmpl.msc 並按 ENTER。
在 [詳細資料] 窗格中,在您要變更的憑證範本上一下按滑鼠右鍵,然後按一下 [內容]。
按一下 [發行需求] 索引標籤。
在 [授權簽章的數目] 底下,輸入您要使用的登錄授權單位簽章數目。
對每個新物件重複上一個步驟,然後按一下 [確定]。
按一下 [開始],指向 [系統管理工具],然後按一下 [憑證授權單位]。
按兩下 CA 的名稱。
在「憑證範本」容器上按一下滑鼠右鍵,然後依序按一下 [新增] 和 [要發行的憑證範本]。
選取憑證範本,然後按一下 [確定]。
若要確認憑證要求處理是否正確運作:
按一下 [開始] 並輸入 certmgr.msc,然後按 ENTER。
當 [使用者帳戶控制] 對話方塊出現時,請確認其中顯示的動作即是您要執行的動作,然後按一下 [繼續]。
在主控台樹狀目錄中,按兩下 [個人],然後按一下 [憑證]。
在 [動作] 功能表上,指向 [所有工作],然後按一下 [要求新憑證] 以啟動 [憑證註冊精靈]。
針對任何類型的可用憑證使用精靈來建立和提交憑證要求。
在 [憑證安裝結果] 底下,確認註冊成功完成,並且沒有報告任何錯誤。您也可以按一下 [詳細資料] 以檢視憑證的其他資訊。
Target | Microsoft.Windows.CertificateServices.CARole.2016 |
Category | EventCollection |
Enabled | True |
Event_ID | 56 |
Event Source | Microsoft-Windows-CertificationAuthority |
Alert Generate | False |
Remotable | True |
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.56" 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">56</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"/>
</WriteActions>
</Rule>