在客户端中进行单点登录(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 关联。然后,用户使用其集中式凭据连接到客户端VPN终端节点。

身份验证工作流

下图概述了使用SAML基于联合身份验证的客户端VPN终端节点的身份验证工作流程。创建和配置客户端VPN终端节点时,需要指定IAMSAML身份提供商。

身份验证工作流
  1. 用户在其设备上打开 AWS 提供的客户端,并启动与客户端VPN端点的连接。

  2. 客户端VPN终端节点根据身份提供者中提供的信息向客户端发送 IdP URL 和IAMSAML身份验证请求。

  3. AWS 提供的客户端会在用户设备上打开一个新的浏览器窗口。浏览器向 IdP 发出请求并显示登录页面。

  4. 用户在登录页面上输入其凭据,然后 IdP 将签名的SAML断言发送回客户端。

  5. AWS 提供的客户端将SAML断言发送到客户端VPN端点。

  6. 客户端VPN端点会验证断言,并允许或拒绝用户访问。

SAML基于联合身份验证的要求和注意事项

以下是SAML基于联合身份验证的要求和注意事项。

  • 有关在SAML基于基础的 IdP 中配置用户和组的配额和规则,请参阅。用户和组配额

  • 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 通过重定向绑定向 IdP 发送 AuthN 请求。HTTP因此,IdP 应支持HTTP重定向绑定,并且该绑定应存在于 IdP 的元数据文档中。

  • 对于SAML断言,必须使用该NameID属性的电子邮件地址格式。

SAML基于 IdP 的配置资源

下表列出了我们测试过 IdPs 的SAML基于 IdP 的资源 AWS Client VPN,以及可以帮助您配置 IdP 的资源。

用于创建应用程序的服务提供商信息

要使用上表中未列出的 IdP 创建SAML基于的应用程序,请使用以下信息配置 AWS Client VPN 服务提供商信息。

  • 断言消费者服务 (ACS)URL:http://127.0.0.1:35001

  • 观众URI:urn:amazon:webservices:clientvpn

IdP 的SAML响应中必须至少包含一个属性。以下是示例属性。

属性 描述
FirstName 用户的名字。
LastName 用户的姓氏。
memberOf 列出用户所属的一个或多个组。
注意

memberOf属性是使用基于 Active Directory 或 SAML IdP 群组的授权规则所必需的。此属性还区分大小写,且必须完全按照指定的方式进行配置。有关更多信息,请参阅 基于网络的授权AWS Client VPN 授权规则

支持自助服务门户

如果您为客户端VPN终端节点启用自助服务门户,则用户将使用SAML基于他们的 IdP 凭据登录门户。

如果您的 IdP 支持多个 Assertion 消费者服务 (ACS)URLs,请将以下内容ACSURL添加到您的应用程序中。

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

如果您在某个 GovCloud 地区使用客户端VPN终端节点,请ACSURL改用以下内容。如果您使用同一个IDP应用程序对标准版和 GovCloud 区域进行身份验证,则可以同时添加两者URLs。

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

如果您的 IdP 不支持多个 ACSURLs,请执行以下操作:

  1. 在您的 IdP 中创建其他SAML基于 App 的应用程序并指定以下内容。ACS URL

    https://self-service.clientvpn.amazonaws.com/api/auth/sso/saml
  2. 生成并下载联合身份元数据文档。

  3. 在与客户端VPN终端节点相同的 AWS 账户中创建IAMSAML身份提供商。有关更多信息,请参阅IAM用户指南中的创建IAMSAML身份提供商

  4. 创建客户端VPN终端节点,并指定您创建的两个IAMSAML身份提供商。