用戶端中的單一登入 — SAML 以 2.0 為基礎的同盟驗證 VPN - AWS Client VPN

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

用戶端中的單一登入 — SAML 以 2.0 為基礎的同盟驗證 VPN

AWS Client VPN 針對用戶VPN端端點支援與安全宣告標記語言 2.0 (SAML2.0) 的身分識別聯合。您可以使用支援 SAML 2.0 的身分識別提供者 (IdPs) 來建立集中式使用者身分識別。然後,您可以將用戶VPN端端點設定為使用SAML基礎的聯合驗證,並將其與 IdP 建立關聯。然後,使用者使用其集中式認證連線到 Client VPN 端點。

身分驗證工作流程

下圖提供使用聯合驗證之用SAML戶VPN端端點的驗證工作流程概觀。建立並設定用戶VPN端端點時,請指定IAMSAML身分識別提供者。

身分驗證工作流程
  1. 使用者會在其裝置上開啟 AWS 所提供的用戶端,並啟動與 Client VPN 端點的連線。

  2. 用戶端VPN端點會根據IAMSAML身分識別提供者中提供的資訊,將 IdP URL 和驗證要求傳回給用戶端。

  3. AWS 提供的客戶端在用戶的設備上打開一個新的瀏覽器窗口。瀏覽器向 IdP 發出請求並顯示登入頁面。

  4. 使用者在登入頁面上輸入其認證,IdP 會將已簽署的SAML宣告傳回給用戶端。

  5. AWS 提供的客戶端將SAML斷言發送到客戶VPN端端點。

  6. 用戶端VPN端點會驗證宣告,並允許或拒絕使用者存取。

SAML以聯合認證為基礎的需求和考量

以下是以聯合認證為SAML基礎的需求和考量事項。

  • 如需在 IdP 中設定使用者和群組的SAML配額和規則,請參閱使用者和群組配額

  • SAML斷言和SAML文件必須簽署。

  • AWS Client VPN 僅支援SAML宣告中的 "" NotBefore 和 NotOnOrAfter "和" 條件。AudienceRestriction

  • 支援的SAML回應大小上限為 128 KB。

  • AWS Client VPN 不提供已簽署的驗證要求。

  • SAML不支援單一登出。使用者可以從 AWS 提供的用戶端中斷連線來登出,或者您也可以終止連線

  • 用戶端VPN端點僅支援單一 IdP。

  • 在您的 IdP 中啟用多因素驗證 (MFA) 時,支援該驗證 ()。

  • 使用者必須使用 AWS 提供的用戶端連線至用戶端VPN端點。您必須使用版本 1.2.0 或更新的版本。如需詳細資訊,請參閱使用AWS 提供的用戶端進行 Connect

  • 以下瀏覽器支援 IdP 身分驗證:Apple Safari,Google Chrome,Microsoft Edge 和 Mozilla Firefox。

  • AWS 提供的用戶端會在使用者裝置上保留TCP連接埠 35001 以供SAML回應。

  • 如果IAMSAML身分識別提供者的中繼資料文件更新為不正確或惡意URL,這可能會對使用者造成驗證問題,或導致網路釣魚攻擊。因此,建議您使用 AWS CloudTrail 來監視對IAMSAML身分識別提供者進行的更新。如需詳細資訊,請參閱IAM使用者指南 AWS CloudTrail中的記錄IAM和 AWS STS 通話

  • AWS Client VPN 透過HTTP重新導向繫結傳送 AuthN 要求至 IdP。因此,IdP 應該支援HTTP重新導向繫結,並且應該出現在 IdP 的中繼資料文件中。

  • 對於SAML斷言,您必須使用NameID屬性的電子郵件地址格式。

SAML基於 IdP 組態資源

下表列出了我們 IdPs 已測試與搭配使用的SAML基礎 AWS Client VPN,以及可協助您設定 IdP 的資源。

IdP 資源
Okta 驗證 AWS Client VPN 使用者 SAML
Microsoft Azure Active Directory 如需詳細資訊,請參閱 Microsoft 文件網站VPN上的教學課程:Azure 作用中目錄單一登入 (SSO) 與 AWS 用戶端整合
JumpCloud 單次登入 (SSO) AWS Client VPN
AWS IAM Identity Center 使用IAM身分識別中心 AWS Client VPN 進行驗證和授權

建立應用程式的服務提供者資訊

若要使用上表未列出的 IdP 建立SAML基於應用程式,請使用下列資訊來設定 AWS Client VPN 服務提供者資訊。

  • 斷言消費者服務(ACS)URL:http://127.0.0.1:35001

  • 觀眾URI:urn:amazon:webservices:clientvpn

IdP 的SAML回應中必須包含至少一個屬性。範例屬性如下。

屬性 描述
FirstName 使用者的名字。
LastName 使用者的姓氏。
memberOf 使用者所屬的一或多個群組。
注意

memberOf屬性是使用活動目錄或 SAML IdP 基於組的授權規則所必需的。該屬性亦區分大小寫,且必須完全按照指定進行設定。如需詳細資訊,請參閱 以網路為基礎的授權AWS Client VPN 授權規則

自助入口網站支援

如果您為用戶VPN端端點啟用自助入口網站,則使用者會使用其SAML基於 IdP 認證的入口網站登入入口網站。

如果您的 IdP 支持多個斷言消費者服務(ACS)URLs,請將以下內容添加ACSURL到您的應用程序中。

https://self-service.clientvpn.amazonaws.com/api/auth/sso/saml

如果您在 GovCloud 區域中使用 Client VPN 端點,請ACSURL改用下列指令。如果您使用相同的應用IDP程式來驗證標準和 GovCloud 區域,您可以同時新增這兩個應用程式URLs。

https://gov.self-service.clientvpn.amazonaws.com/api/auth/sso/saml

如果您的 IdP 不支援多個 ACSURLs,請執行下列動作:

  1. 在 IdP 中建立其他SAML基於應用程式,並指定以下ACSURL內容。

    https://self-service.clientvpn.amazonaws.com/api/auth/sso/saml
  2. 產生並下載聯合身分中繼資料文件。

  3. 在與用戶VPN端端點相同的 AWS 帳戶中建立IAMSAML身分識別提供者。如需詳細資訊,請參閱IAM使用指南中的建立IAMSAML身分識別提供

  4. 建立用戶端VPN端點,並指定您建立的兩個IAMSAML身分識別提供者。