單一登入 (SAML 2.0 型聯合身分驗證) - AWS Client VPN

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

單一登入 (SAML 2.0 型聯合身分驗證)

AWS Client VPN 針對 Client VPN 端點,支援使用安全宣告標記語言 2.0 (SAML 2.0) 的身分識別聯合。您可以使用支援 SAML 2.0 的身分識別提供者 (IdPs) 來建立集中式使用者身分識別。然後,您可以將 Client VPN 端點設為使用 SAML 類型聯合身分驗證,並將其與 IdP 建立關聯。然後,使用者可使用其集中式登入資料連線至 Client VPN 端點。

若要讓 SAML 類型的 IdP 使用 Client VPN 端點,您必須執行下列作業。

  1. 在您選擇的 IdP 中建立 SAML 型應用程式以搭配使用 AWS Client VPN,或使用現有的應用程式。

  2. 設定 IdP 與 建立信任關係 AWS如需資源,請參閱 SAML 型 IdP 組態資源

  3. 在 IdP 中產生並下載聯合中繼資料文件,以將您的組織描述為 IdP。此已簽署的 XML 文件可用來建立與 IdP 之間 AWS 的信任關係。

  4. 在與 Client VPN 端點相同的 AWS 帳戶中建立 IAM SAML 身分識別提供者。IAM SAML 身分識別提供者會使用 IdP 產生的中繼資料文件來定義組織的 IdP 對AWS 信任關係。如需詳細資訊,請參閱《IAM 使用者指南》中的建立 IAM SAML 身分提供者。如果您稍後更新 IdP 中的應用程式組態,請產生新的中繼資料文件並更新 IAM SAML 身分提供者。

    注意

    您不需要建立 IAM 角色即可使用 IAM SAML 身分提供者。

  5. 建立 Client VPN 端點。指定聯合身分驗證做為身分驗證類型,並指定您建立的 IAM SAML 身分提供者。如需更多詳細資訊,請參閱 建立 Client VPN 端點。

  6. 匯出用戶端組態檔案,並將其分配到您的使用者。指示使用者下載 AWS 提供的用戶端之最新版本,並使用其來載入組態檔案並連線到 Client VPN 端點。或者,如果您為 Client VPN 端點啟用自助入口網站,請指示您的使用者前往自助入口網站以取得設定檔和 AWS 提供的用戶端。如需詳細資訊,請參閱 存取自助式入口網站

身分驗證工作流程

下圖提供身分驗證工作流程概觀,適用於使用 SAML 類型聯合身分驗證的 Client VPN 端點。建立和設定 Client VPN 端點時,請指定 IAM SAML 身分提供者。

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

  2. Client VPN 端點會根據 IAM SAML 身分提供者中提供的資訊,將 IdP URL 和身分驗證請求傳回用戶端。

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

  4. 使用者在登入頁面上輸入登入資料,且 IdP 會將簽署的 SAML 聲明傳回給用戶端。

  5. AWS 提供的用戶端會將 SAML 宣告傳送至 Client VPN 端點。

  6. Client VPN 端點會驗證聲明,並允許或拒絕對使用者的存取。

SAML 型聯合身分驗證的需求和考量

以下是 SAML 型聯合身分驗證的需求和考量。

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

  • 必須簽署 SAML 聲明和 SAML 文件。

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

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

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

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

  • Client VPN 端點僅支援單一 IdP。

  • 在 IdP 中啟用多重要素驗證 (MFA) 時,即支援多重要素驗證 (MFA)。

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

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

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

  • 如果使用不正確或惡意的 URL 更新 IAM SAML 身分提供者的中繼資料文件,這可能會導致使用者身分驗證問題,或導致網路釣魚攻擊。因此,我們建議您使用 AWS CloudTrail 監視對 IAM SAML 身分提供者所做的更新。如需詳細資訊,請參閱《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 文件網站上的教學課程:Azure 作用中目錄單一登入 (SSO) 與用 AWS 戶端 VPN 整合
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 使用者所屬的一或多個群組。
注意

使用 Active Directory 或 SAML IdP 群組型授權規則需要 memberOf 屬性。該屬性亦區分大小寫,且必須完全按照指定進行設定。如需詳細資訊,請參閱 以網路為基礎的授權授權規則

自助入口網站支援

如果您為 Client VPN 端點啟用自助入口網站,使用者可以使用其 SAML 類型的 IdP 登入資料登入入口網站。

如果您的 IdP 支援多個聲明消費者服務 (ACS) URL,請將下列 ACS URL 新增到您的應用程式。

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

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

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

如果您的 IdP 不支援多個 ACS URL,請執行下列作業:

  1. 在您的 IdP 中建立額外的 SAML 類型應用程式,並指定下列 ACS URL。

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

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

    注意

    除了您為主要應用程式建立的之外,您還建立了這個 IAM SAML 身分提供者。

  4. 建立 Client VPN 端點,並指定您建立的 IAM SAML 身分提供者。