共用方式為


憑證與金鑰管理指導方針

套用至

  • Microsoft Azure Active Directory 存取控制服務 (也稱為「存取控制服務」或 ACS)

總結

本主題描述在 ACS 中使用憑證和金鑰的指導方針。 因為憑證和金鑰的設計會過期,所以請務必追蹤到期日,並在到期前採取適當的動作,讓使用 ACS 的應用程式在未中斷的情況下繼續正常運作。

重要

追蹤到期日和更新憑證、存取控制命名空間所使用的金鑰和密碼、信賴憑證者應用程式、服務識別和 ACS 管理服務帳戶。

目標

  • 列出必須追蹤其到期日的憑證與金鑰

  • 簡述憑證與金鑰的更新程序

    重要

    請參閱本主題中的特定憑證、認證或金鑰各節,以了解錯誤訊息和更新程序。

概觀

因為憑證一定會到期,所以最好在目前憑證到期前預先上傳新憑證。 應執行的高層級步驟如下:

  • 上傳新的次要憑證。

  • 通知使用服務的合作夥伴將有變更發生。 合作夥伴應更新其信賴憑證者的憑證設定 (例如,在 ASP.NET Web 應用程式中 trustedIssuers 節點之下的 web.config 中設定的憑證指紋)。

  • 切換簽署至新的憑證 (標記為主要),並將前一個憑證保留一段合理的寬限期。

  • 寬限期結束之後, 請移除 舊的憑證。 

當憑證或金鑰到期時,ACS 發出的權杖嘗試會失敗,且信賴憑證者應用程式無法正常運作。 ACS 會忽略過期的憑證和金鑰,導致未設定任何憑證或金鑰時擲回的相同例外狀況。

下列各節提供管理 ACS 使用的憑證和金鑰、如何更新憑證和金鑰,以及如何識別即將到期或已過期的憑證和金鑰的相關資訊。

  • 若要管理存取控制命名空間和信賴憑證者應用程式的憑證和金鑰,請使用 ACS 管理入口網站的 [憑證和金鑰] 頁面。 如需這些認證類型的詳細資訊,請參閱 憑證和金鑰

  • 若要管理認證 (憑證、金鑰或密碼) 服務識別,請使用 ACS 管理入口網站的 [服務識別 ] 頁面。 如需服務識別的詳細資訊,請參閱 服務身分識別

  • 若要管理認證 (憑證、金鑰或密碼) ACS 管理服務帳戶,請使用 ACS 管理入口網站的 [管理服務 ] 頁面。 如需 ACS 管理服務的詳細資訊,請參閱 ACS 管理服務

  • 若要管理 WS-同盟身分識別提供者的憑證,例如 AD FS 2.0,請使用 ACS 管理入口網站的 [身分識別提供者] 頁面。 如需詳細資訊,請參閱WS-Federation識別提供者憑證和 WS-同盟識別提供者

    若要以程式設計方式檢視和更新WS-Federation識別提供者憑證和金鑰,請使用 ACS 管理服務。 若要驗證憑證的有效日期,請查詢IdentityProviderKey實體之StartDateEndDate屬性的值。 如需詳細資訊,請下載 KeyManagement 程式碼範例: 程式碼範例:金鑰管理

當您要求由過期憑證或金鑰簽署的權杖時,ACS 會擲回憑證或金鑰專屬 ACS 錯誤碼 的例外狀況。 請參閱以下區段,以取得特定錯誤碼。

可用的憑證與金鑰

下列清單會顯示 ACS 中使用的可用憑證和金鑰,而且必須追蹤到期日:

重要

請參閱本主題中的特定憑證、認證或金鑰各節,以了解錯誤訊息和更新程序。

  • 權杖簽署憑證

  • 權杖簽署金鑰

  • 權杖加密憑證

  • 權杖解密憑證

  • 服務身分識別認證

  • ACS 管理服務帳號憑證

  • WS-同盟身分識別提供者簽署與加密憑證

本主題的其餘部分會詳細說明每個憑證與金鑰。

權杖簽署憑證

ACS 會簽署它所發出的所有安全性權杖。 它使用 X.509 憑證來簽署應用程式的 SAML 權杖。

如果簽署憑證已過期,當您要求權杖時,ACS 會傳回下列錯誤:

錯誤碼 訊息 補救方法

ACS50004

未設定主要 X.509 簽署憑證。 SAML 需要對稱簽署憑證。

如果選擇的信賴憑證者使用 SAML 權杖,請確定已針對信賴憑證者或存取控制命名空間設定有效的 X.509 憑證。 憑證必須設為主要且不可過期。

更新簽署憑證:

  1. 移至Microsoft Azure管理入口網站 (https://manage.WindowsAzure.com) 登入,然後按一下 [Active Directory]。 (疑難排解提示: 「Active Directory」專案遺失或無法使用)

  2. 若要管理存取控制命名空間,請選取該命名空間,然後按一下 [管理]。 (或按一下 [存取控制命名空間]、選取 [命名空間],然後按一下 [管理])。

  3. 按一下 [憑證和金鑰]

  4. 選取狀態為 [即將過期][已過期] 的憑證。

    注意

    在 [憑證和金鑰] 區段中,存取控制命名空間的憑證和金鑰會標示為[服務命名空間]。

  5. 依需要輸入或產生憑證。

  6. 更新 [生效][到期] 日期。

  7. 按一下 [儲存] 即完成。

權杖簽署金鑰

ACS 會簽署它所發出的所有安全性權杖。 ACS 會針對使用 ACS 所發行 SWT 權杖的應用程式使用 256 位對稱簽署金鑰。

如果簽署金鑰已過期,當您要求權杖時,ACS 會傳回下列錯誤:

錯誤碼 訊息 補救方法

ACS50003

未設定主要對稱簽署金鑰。 SWT 需要對稱簽署金鑰。

如果選擇的信賴憑證者使用 SWT 作為其權杖類型,請確定已針對信賴憑證者或存取控制命名空間設定對稱金鑰,且金鑰已設定為主要且未過期。

更新簽署金鑰:

  1. 移至Microsoft Azure管理入口網站 (https://manage.WindowsAzure.com) 登入,然後按一下 [Active Directory]。 (疑難排解提示: 「Active Directory」專案遺失或無法使用)

  2. 若要管理存取控制命名空間,請選取該命名空間,然後按一下 [管理]。 (或按一下 [存取控制命名空間]、選取 [命名空間],然後按一下 [管理])。

  3. 按一下 [憑證和金鑰]

  4. 選取狀態為 [即將過期][已過期] 的金鑰。

    注意

    在 [憑證和金鑰] 區段中,存取控制命名空間的憑證和金鑰會標示為[服務命名空間]。

  5. 依需要輸入或產生金鑰。

  6. 更新 [生效][到期] 日期。

  7. 按一下 [儲存] 即完成。

權杖加密憑證

當信賴憑證者應用程式是一個透過 WS-Trust 通訊協定來使用持有證明權杖的 Web 服務時,需要權杖加密。 在其他情況下,權杖加密是選用的。

如果加密憑證已過期,當您要求權杖時,ACS 會傳回下列錯誤:

錯誤碼 訊息 補救方法

ACS50005

需要權杖加密,但不需要為信賴憑證者設定加密憑證。

請停用所選信賴憑證者的權杖加密,或上傳權杖加密要使用的 X.509 憑證。

更新加密憑證:

  1. 移至Microsoft Azure管理入口網站 (https://manage.WindowsAzure.com) 登入,然後按一下[Active Directory]。 (疑難排解提示: 「Active Directory」 專案遺失或無法使用)

  2. 若要管理存取控制命名空間,請選取該命名空間,然後按一下 [管理]。 (或按一下 [存取控制命名空間]、選取 [命名空間],然後按一下 [管理])。

  3. 按一下 [憑證和金鑰]

  4. 選取狀態為 [即將過期][已過期] 的憑證。

    注意

    在 [憑證和金鑰] 區段中,存取控制命名空間的憑證和金鑰會標示為服務命名空間

  5. 輸入或流覽至新的憑證檔案,然後輸入該檔案的密碼。

  6. 按一下 [儲存] 即完成。

權杖解密憑證

ACS 可以接受來自WS-Federation識別提供者的加密權杖,例如 AD FS 2.0。 ACS 使用裝載于 ACS 中的 X.509 憑證進行解密。

如果解密憑證已過期,當您要求權杖時,ACS 會傳回下列錯誤:

錯誤碼 訊息

ACS10001

處理 SOAP 標頭時發生錯誤。

ACS20001

處理 WS-同盟登入回應時發生錯誤。

更新解密憑證:

  1. 移至Microsoft Azure管理入口網站 (https://manage.WindowsAzure.com) 登入,然後按一下[Active Directory]。 (疑難排解提示: 「Active Directory」 專案遺失或無法使用)

  2. 若要管理存取控制命名空間,請選取該命名空間,然後按一下 [管理]。 (或按一下 [存取控制命名空間]、選取 [命名空間],然後按一下 [管理])。

  3. 按一下 [憑證和金鑰]

  4. 使用 ACS 管理入口網站中的 [憑證和金鑰] 區段來管理與存取控制命名空間和信賴憑證者應用程式相關的憑證或金鑰。

  5. 選取狀態為 [即將過期][已過期] 的憑證。

    注意

    在 [憑證和金鑰] 區段中,存取控制命名空間的憑證和金鑰會標示為服務命名空間

  6. 輸入或瀏覽至新的憑證檔,然後輸入該檔案的密碼。

  7. 按一下 [儲存] 即完成。

服務身分識別認證

服務識別是全域為存取控制命名空間設定的認證。 它們可讓應用程式或用戶端使用 ACS 直接進行驗證,並接收權杖。 ACS 服務識別可以使用對稱金鑰、密碼和 X.509 憑證。 ACS 會在認證過期時擲回下列例外狀況。

認證 錯誤碼 訊息 補救方法

對稱金鑰、密碼

ACS50006

簽章驗證失敗 (訊息中有 M 詳細資料)。

X.509 憑證

ACS50016

具有主體 「 < 憑證主體名稱 > 」且指紋 ' < Certificate Thumbprint > ' 的 X509Certificate 不符合任何已設定的憑證。

確定要求的憑證已上傳至 ACS。

若要確認和更新對稱金鑰或密碼的到期日,或上傳新的憑證作為服務識別認證,請遵循 如何:使用 X.509 憑證、密碼或對稱金鑰新增服務識別中所述的指示。 [編輯服務身分識別] 頁面中可用的服務身分識別認證清單。

  1. 移至 ACS 管理入口網站中的 [服務身分識別 ] 頁面。

  2. 選取服務身分識別。

  3. 選取狀態為 [已過期][即將過期] 的認證、對稱金鑰、密碼或 X.509 憑證。

  4. 若為對稱金鑰,請輸入或產生新的金鑰,再輸入 [生效][到期] 日期。 按一下 [檔案] 。

  5. 若為密碼,請輸入新的密碼,再輸入 [生效][到期] 日期。 按一下 [檔案] 。

  6. 若為 X.509 憑證,請輸入或瀏覽至新的憑證檔,然後按一下 [儲存]

管理服務認證

ACS 管理服務是 ACS 的重要元件,可讓您以程式設計方式管理及設定存取控制命名空間中的設定。 ACS 管理服務帳戶可以使用對稱金鑰、密碼和 X.509 憑證。 如果這些認證已過期,ACS 會擲回下列例外狀況。

認證 錯誤碼 訊息 補救方法

對稱金鑰或密碼

ACS50006

簽章驗證失敗 (在訊息中可能有更多詳細資料)。

X.509 憑證

ACS50016

具有主體 「 < 憑證主體名稱 > 」且指紋 ' < Certificate Thumbprint > ' 的 X509Certificate 不符合任何已設定的憑證。

確定要求的憑證已上傳至 ACS。

ACS 管理服務帳號憑證清單會顯示在 ACS 管理入口網站的 [ 編輯管理服務帳戶 ] 頁面上。

  1. 移至 ACS 管理入口網站中的 [管理服務 ] 頁面。

  2. 選取管理服務帳戶。

  3. 選取 [認證]、[對稱金鑰]、[密碼] 或 [X.509 憑證] 狀態為 [ 已過期 ] 或 [ 即將過期]。

  4. 針對對稱金鑰,輸入或產生新的金鑰,然後輸入 有效到期 日。 按一下 [檔案] 。

  5. 若為密碼,請輸入新的密碼,再輸入 [生效][到期] 日期。 按一下 [檔案] 。

  6. 若為 X.509 憑證,請輸入或瀏覽至新的憑證,然後按一下 [儲存]

WS-同盟身分識別提供者憑證

WS-同盟身分識別提供者的同盟中繼資料文件包含指紋,可識別用來為身分識別提供者簽署權杖的 X.509 憑證。

若要判斷WS-Federation識別提供者憑證是否在其有效日期範圍內,請使用 ACS 管理服務或 ACS 管理入口網站。

使用 ACS 管理入口網站:

  1. 登入 Azure 管理入口網站 https://manage.WindowsAzure.com

  2. 選取存取控制命名空間,然後按一下 [管理] (或者,按一下 [存取控制命名空間],選取存取控制命名空間,然後按一下 [管理])。

  3. 在 ACS 管理入口網站中,按一下 [身分識別提供者],然後選取 WS-同盟身分識別提供者。

  4. 在 [權杖簽署憑證] 區段中,檢視 WS-同盟身分識別提供者憑證的生效日期和 [狀態]

  5. 如果憑證狀態是 [已過期] 或 [即將過期],請驗證 WS-同盟身分識別提供者 (AD FS 或自訂身分識別提供者) 已新增次要簽署憑證。

    如果您使用 URL 來識別 WS-同盟身分識別提供者的同盟中繼資料,請選取 [儲存時從 WS-同盟中繼資料 URL 重新匯入資料],然後按一下 [儲存]。 如果您以本機檔案上傳 WS-同盟中繼資料,請再次上傳新的 WS-同盟中繼資料檔,然後按一下 [儲存]

如果 ACS 從身分識別提供者接收的權杖是以過期或未知的憑證簽署,ACS 會擲回下列例外狀況。

錯誤碼 訊息

ACS10001

處理 SOAP 標頭時發生錯誤。

ACS20001

處理 WS-同盟登入回應時發生錯誤。

ACS50006

簽章驗證失敗 (在訊息中可能有更多詳細資料)。

另請參閱

工作

程式碼範例:金鑰管理

概念

ACS 錯誤碼
ACS 指導方針索引
ACS 管理服務
憑證和金鑰
如何:使用 X.509 憑證、密碼或對稱金鑰新增服務識別
信賴憑證者應用程式
服務身分識別