共用方式為


憑證和金鑰

更新日期:2015 年 6 月 19 日

適用對象:Azure

Microsoft Azure Active Directory 存取控制 (也稱為存取控制服務或 ACS) 提供兩種不同的方式來簽署和加密權杖:具有私密金鑰的 X.509 憑證和 256 位對稱金鑰。 您可以針對命名空間中的特定信賴憑證者應用程式或所有信賴憑證者應用程式,設定每一個憑證或金鑰來簽署權杖,您也可以將憑證和金鑰指定為主要或次要。 若要新增和設定權杖簽署、加密和解密憑證和金鑰,請使用 ACS 管理服務或 ACS 管理入口網站。

簽署權杖

ACS 會使用私密金鑰) 或 256 位對稱金鑰, (X.509 憑證簽署它所發出的所有安全性權杖。 您選擇的簽署認證類型 (憑證或金鑰) 取決於您針對 ACS 核發令牌選取的權杖格式。 如需詳細資訊,請參閱 信賴憑證者應用程式中的「權杖簽署」。 選取要建立的簽署認證類型時,請考量下列事項:

  • SAML 權杖是以 X.509 憑證簽署。 SAML 是 Windows Identity Foundation (WIF) 上建立的應用程式所使用的預設權杖格式。 SAML 權杖可透過多種通訊協定發出,例如 WS-同盟和 WS-Trust。

  • SWT 權杖是以 256 位元對稱金鑰簽署。 SWT 權杖可透過多種通訊協定發出,例如 OAuth WRAP 和 WS-同盟。

  • JWT 權杖可由 X.509 憑證或 256 位元對稱金鑰簽署。 JWT 權杖可透過多種通訊協定發出,例如 WS-同盟、WS-Trust 和 OAuth 2.0。

命名空間或專用憑證和金鑰

您可以設定簽署憑證或對稱金鑰,使其用於整個存取控制命名空間,或僅用於命名空間中的特定信賴憑證者應用程式。 差異如下所示:

  • 存取控制命名空間— 針對整個存取控制命名空間設定簽署憑證或金鑰時,ACS 會使用此憑證或金鑰來簽署此命名空間中沒有應用程式特定憑證或金鑰之所有信賴憑證者應用程式的權杖。 命名空間範圍的憑證也可用來簽署 ACS WS-Federation中繼資料。

  • 專用— 如果您設定要用於特定信賴憑證者應用程式的簽署憑證或金鑰,ACS 只會使用簽署憑證或金鑰來簽署傳遞至指定信賴憑證者應用程式的權杖。

    如果您建立或輸入專用對稱金鑰,ACS 會使用專用金鑰來簽署應用程式的權杖。 如果專用金鑰到期且未取代,ACS 會使用存取控制命名空間的對稱金鑰來簽署應用程式的權杖。

注意

  • 以安全性最佳作法而言,當使用對稱金鑰時,請為每一個信賴憑證者應用程式建立專用金鑰。 X.509 憑證可由存取控制命名空間中的多個應用程式安全地共用。

  • 當您將 Microsoft 管理的信賴憑證者應用程式加入至受管理的命名空間時,例如將服務匯流排信賴憑證者應用程式加入至服務匯流排命名空間,請不要使用應用程式特定 (專用) 的憑證或金鑰。 相反地,請選取 ACS 選項來使用針對受管理命名空間中的所有應用程式所設定的憑證和金鑰。 至於其他所有信賴憑證者應用程式,請使用應用程式特定的憑證和金鑰。 如需詳細資訊,請參閱 受控命名空間

  • 當您設定使用 存取控制 命名空間 X.509 憑證來簽署 JWT 權杖的信賴憑證者應用程式時,連結至存取控制命名空間憑證,而存取控制命名空間金鑰會出現在 ACS 管理入口網站中信賴憑證者應用程式的頁面上。 不過,ACS 只會使用命名空間憑證來簽署信賴憑證者應用程式的權杖。

簽署憑證通常用來簽署命名空間中所有信賴憑證者應用程式的權杖。 命名空間簽署憑證的公開金鑰元件會發佈在 ACS WS-Federation中繼資料中,讓信賴憑證者應用程式能夠將其設定自動化。 只有指派給特定信賴憑證者應用程式的憑證公開金鑰不會出現在 ACS WS-Federation中繼資料中,而且只有在需要信賴憑證者應用程式簽署憑證的獨立控制時才會使用。

主要憑證和金鑰

在 ACS 中,您可以維護數個憑證和金鑰,但只使用指定的憑證和金鑰來簽署權杖。 指定用於簽署的憑證和金鑰稱為「主要」憑證和金鑰。

若要將憑證或金鑰指定為主要,請在憑證或金鑰的頁面上選取 [設為主要] 項目。 若要將另一個憑證指定為主要,請在其他憑證或金鑰的頁面上選取 [設為主要] 項目。 當您這麼做時,ACS 會自動將任何現有的主要憑證或金鑰降級為非主要憑證。

當至少有一個憑證或金鑰為主要時,即使主要憑證或金鑰無效或已過期,非主要憑證和金鑰仍必須由系統管理員升級至主要狀態,才能用於簽署。 不過,如果沒有憑證 (或金鑰) 是主要憑證,ACS 會使用具有最早有效開始日期的非主要憑證。

主要和非主要憑證的公開金鑰元件都會在 ACS WS-Federation中繼資料中發佈,以啟用程式設計憑證變換。 不過,ACS 只會使用主要憑證和金鑰來簽署權杖。

簽署金鑰的生效日和到期日

當您新增 256 位元的對稱簽署金鑰時,必須同時指定生效日期和到期日。 生效日期表示此金鑰的生效日期。 到期日表示此金鑰到期且無法用於簽署權杖的日期。

加密權杖

在 ACS 中,您可以選擇加密 ACS 對信賴憑證者應用程式發出的任何 SAML 1.1 或 SAML 2.0 權杖。

重要

ACS 不支援 SWT 或 JWT 權杖的加密。

透過 WS-Trust 通訊協定使用持有證明權杖的 Web 服務需要權杖加密。 如果您使用 ACS 來管理這類信賴憑證者應用程式的驗證,此信賴憑證者應用程式的所有 ACS 發行權杖都必須加密。 在所有其他案例中,權杖加密是選用的。

ACS 會使用包含公開金鑰的 X.509 憑證來加密 SAML 權杖 (.cer 檔案) 。 信賴憑證者應用程式會使用該 X.509 憑證的私密金鑰來解密權杖。 如需詳細資訊,請參閱 信賴憑證者應用程式中的「權杖加密」。

解密權杖

ACS 可以接受來自WS-Federation識別提供者的加密權杖,例如 。 WS-Federation識別提供者從 ACS 匯入WS-Federation中繼資料時,會收到 X.509 憑證的公開金鑰,並使用此公開金鑰來加密轉送至 ACS 的安全性權杖。 ACS 會使用此 X.509 憑證的私密金鑰來解密權杖。 如需詳細資訊,請參閱 如何:將 AD FS 2.0 設定為識別提供者

主要權杖解密憑證

您可以維護信賴憑證者應用程式或存取控制命名空間的多個權杖解密憑證。 當您將憑證指定為 主要憑證時,ACS 會使用該憑證來解密來自WS-Federation識別提供者的權杖,而且只有在嘗試使用主要憑證失敗時,才會使用非主要憑證。

若要將解密憑證指定為主要,請在憑證的頁面上選取 [設為主要] 項目。 若要將另一個憑證指定為主要,請在其他憑證的頁面上選取 [設為主要] 項目。 當您這麼做時,ACS 會自動將任何現有的主要解密憑證降級為非主要憑證。

X.509 憑證檔的 ACS 限制

在 ACS 中,僅包含公開金鑰的 X.509 憑證 (.cer 檔案) 可用於建立服務識別、驗證識別提供者的簽章,或加密 SAML 權杖。 僅包含公開金鑰的 X.509 憑證檔案 (.cer 檔案) 必須經過 DER 編碼,才能與 ACS 搭配使用。 目前不支援 Base64 編碼的憑證檔。 將 base64 編碼的憑證上傳至 ACS 時,當 ACS 收到需要該憑證的傳入權杖時,將會導致驗證錯誤。

在 ACS 中,X.509 憑證必須自我簽署,或直接簽署並鏈結至公開憑證授權單位單位。 ACS 不適用於私人憑證授權單位單位所發行的憑證。

注意

匯入 ACS 的 X.509 憑證不得過期。

取得 X.509 憑證

有數種方式可取得權杖簽署、權杖加密或解密的 X.509 憑證。 您使用的方法取決於您的需求和組織中的可用工具。

商業憑證授權單位 - 您可以向商業憑證授權單位購買 X.509 憑證。

產生Self-Signed憑證— 您可以產生自己的自我簽署憑證,以搭配 ACS 使用。 如果您正在執行以Windows為基礎的作業系統,您可以使用 MakeCert.exe,這是 Microsoft Windows 軟體發展工具組https://go.microsoft.com/fwlink/?LinkID=214104 () 中所包含的工具,以產生自我簽署憑證。

例如,下列命令會在個人憑證存放區中產生自我簽署憑證。

MakeCert.exe -r -pe -n "CN=<service_namespace_name>.accesscontrol.windows.net" -sky exchange -ss my -len 2048 –e <1 year from today>

其中 < service_namespace_name > 是您存取控制命名空間的名稱。

然後,您可以將私密金鑰從個人存放區匯出為 .pfx 檔案,並使用 ACS 管理入口網站將其上傳至 ACS。

匯出自我簽署憑證

這些指示說明如何從執行 Windows 8、Windows Server 2012、 或 的電腦匯出自我簽署憑證。

匯出自我簽署憑證

  1. 開始MMC.exe,並將 [ 憑證 ] 嵌入式管理單元新增至 MMC 主控台。

  2. 按兩下 [憑證 - 目前的使用者]、[個人] 及 [憑證]

  3. 以滑鼠右鍵按一下憑證,然後依序按一下 [所有工作] 及 [匯出]

  4. 在 [憑證匯出精靈歡迎使用] 頁面上按 [下一步]

  5. 在 [匯出私密金鑰] 頁面上,選取 [是,匯出私密金鑰],然後按 [下一步]

  6. 在 [匯出檔案格式] 頁面上,按一下 [個人資訊交換 - PKCS #12 (.PFX)]

  7. 在 [密碼] 欄位中,輸入密碼和確認密碼,然後按 [下一步]

  8. 在 [檔案名稱] 欄位中,輸入路徑和檔名 (加上 .pfx 副檔名),然後按 [下一步]

  9. 按一下 [完成] 。

憑證和金鑰的有效日期

ACS 會評估 UTC (UTC) 中憑證和金鑰) 的開始和結束日期 (和日期時間。 因此,即使金鑰和憑證在本機電腦或另一個時區的當地時間有效,ACS 還是可能會將金鑰和憑證視為無效。

為了立即確定憑證或金鑰有效,請將日期調整為 UTC 時間。 否則,ACS 可能無法發出權杖,因為金鑰或憑證尚未有效。

另請參閱

概念

ACS 2.0 元件
信賴憑證者應用程式
憑證與金鑰管理指導方針