在边缘设备上为私有云支持 SAML

适用于私有云的 Edge v4.19.01

Edge UI 和 Edge Management API 运行的方式是向边缘管理服务器发出请求, 其中,管理服务器支持以下类型的身份验证:

  • 基本身份验证:登录 Edge 界面或向 Edge 管理服务发出请求 API 登录 API。
  • OAuth2:使用 Edge 基本身份验证凭据交换 OAuth2 访问权限 令牌和刷新令牌通过传递 OAuth2 访问权限来调用 Edge Management API 令牌标记。

Edge 还支持使用安全断言标记语言 (SAML) 2.0 作为身份验证方法 机制。启用 SAML 后,对 Edge 界面和 Edge Management API 的访问仍使用 OAuth2 访问令牌。不过,现在您可以通过 SAML 返回的 SAML 断言生成这些令牌 身份提供方。

SAML 支持单点登录 (SSO) 环境。通过将 SAML 与 Edge 搭配使用,您可以支持单点登录 以及提供并支持 SAML。

Edge 中为 Private Cloud 增加了对 OAuth2 的支持

如上所述,SAML 的 Edge 实现依赖于 OAuth2 访问令牌。因此, 已向适用于私有云的 Edge 添加 OAuth2 支持。如需了解详情,请参阅 OAuth 2.0 简介

SAML 的优势

SAML 身份验证可提供很多优势。您可以使用 SAML 执行以下操作:

  • 全面掌控用户管理。当用户从贵组织离职时, 集中取消配置后,系统会自动拒绝其访问 Edge。
  • 控制用户如何进行身份验证以访问 Edge。您可以选择不同的身份验证 不同 Edge 组织。
  • 控制身份验证政策。您的 SAML 提供商可能支持身份验证政策 符合您企业标准的模板
  • 您可以在 进行边缘部署

将 SAML 与 Edge 搭配使用

如需在 Edge 上支持 SAML,请安装 Edge SSO 模块 apigee-sso。通过 下图显示了用于私有云安装的 Edge 中的 Edge SSO:

您可以在与 Edge UI 和管理服务器相同的节点上安装 Edge SSO 模块,或者 一个单独的节点上运行确保 Edge SSO 可以通过端口 8080 访问管理服务器。

必须在 Edge SSO 节点上打开端口 9099,才能支持从浏览器访问 Edge SSO, 以及管理服务器和边缘界面。在配置过程中 Edge SSO,您可以指定外部连接使用 HTTP 或加密的 HTTPS 协议。

Edge SSO 使用可通过 Postgres 节点上的端口 5432 访问的 Postgres 数据库。通常情况下, 可以使用与 Edge 一起安装的同一个 Postgres 服务器,可以是独立的 Postgres 服务器或两台 Postgres 服务器配置为主/备用模式。如果 Postgres 上的负载 则还可以选择专为 Edge SSO 创建一个单独的 Postgres 节点。

启用 SAML 后,使用 OAuth2 访问令牌访问 Edge 界面和 Edge Management API。 这些令牌由 Edge SSO 模块生成,该模块接受由 IDP。

从 SAML 断言生成后,OAuth 令牌的有效期为 30 分钟,刷新 令牌的有效期为 24 小时。您的开发环境可能支持自动化常见 开发任务,例如测试自动化或持续集成/持续部署 (CI/CD),这需要持续时间较长的令牌。请参阅 将 SAML 与自动化任务搭配使用,了解相关信息 为自动化任务创建特殊令牌。

Edge 界面和 API 网址

您用于访问 Edge 界面和 Edge Management API 的网址与之前使用的网址相同 您已启用 SAML。对于 Edge 界面:

http://edge_ui_IP_DNS:9000
https://edge_ui_IP_DNS:9000

其中 edge_ui_IP_DNS 是机器的 IP 地址或 DNS 名称 托管 Edge 界面在配置 Edge 界面时,您可以指定连接使用 HTTP 或加密的 HTTPS 协议。

对于 Edge Management API:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

其中 ms_IP_DNS 是该管理项目的 IP 地址或 DNS 名称 服务器。在配置 API 的过程中,您可以指定连接使用 HTTP 或 加密的 HTTPS 协议

在 Edge 上配置 TLS

默认情况下,与 Edge SSO 的连接在托管节点上的端口 9099 上使用 HTTP apigee-sso,Edge SSO 模块。内置于 apigee-sso 中的 Tomcat 用于处理 HTTP 和 HTTPS 请求的实例。

Edge SSO 和 Tomcat 支持三种连接模式:

  • DEFAULT - 默认配置支持端口上的 HTTP 请求 9099。
  • SSL_TERMINATION - 在您的端口上启用了对 Edge SSO 的 TLS 访问 选择。您必须为此模式指定 TLS 密钥和证书。
  • SSL_PROXY - 在代理模式下配置 Edge SSO,这意味着您安装了 负载平衡器位于 apigee-sso 前面,并在负载上终止 TLS 进行负载均衡。您可以为来自加载的请求指定在 apigee-sso 上使用的端口 进行负载均衡。

为该门户启用 SAML 支持

为 Edge 启用 SAML 支持后,您可以选择为 Apigee Developer Services 门户(简称门户)启用 SAML。 在向 Edge 发出请求时,该门户支持 SAML 身份验证。请注意,这是 与用于开发者登录门户的 SAML 身份验证不同。您配置 SAML 分别针对开发者登录进行身份验证。请参阅 配置 使用 SAML 与 Edge 通信

在配置门户时,您必须指定 Edge SSO 的网址 模块: