跳到主要内容
版本:3.10.x

控制台单点登录

API7 网关控制台的单点登录(SSO)功能通过使用一组凭证访问系统,简化了用户身份认证。通过与 Keycloak、Microsoft Entra ID(原 Azure AD)、Google 和 Okta 等身份提供商集成,SSO 让用户无需管理多个登录账号,从而减少操作负担并增强安全性。这种集中式方式不仅改善用户体验,还可以在所有集成系统中实施一致的访问策略,强化合规性。

API7 控制台支持 LDAP、OpenID Connect(OIDC)、SAML 和 CAS 协议进行 SSO。LDAP 与目录服务集成,提供集中式用户身份认证和管理,是旧系统及企业环境的可靠选择。OIDC 是构建于 OAuth 2.0 之上的现代协议,基于 Token 为 Web 和移动应用提供安全、易用的身份认证。SAML 广泛用于企业 SSO 场景,可以在身份提供商和服务提供商之间安全交换身份认证数据。CAS(Central Authentication Service)为 Web 应用提供单点登录协议,常用于教育和企业环境。

假设某组织使用 API7 网关管理 API 生态,管理员和开发人员需要定期访问 API7 控制台。管理员负责配置路由、监控性能和实施安全策略,开发人员则被授予管理路由等有限权限,以专注于各自的职责。如果没有 SSO,用户就需要专门为 API7 控制台维护一套凭证。

为了简化访问,该组织将 API7 控制台与支持 SAML、OpenID Connect(OIDC)、LDAP 或 CAS 的身份提供商集成。现在,用户可以使用由身份提供商管理的现有企业凭证登录控制台。API7 网关会在登录期间验证身份提供商发出的 Token 或断言,身份认证成功后将用户重定向到控制台。这种方式简化了登录流程,实施一致的基于角色的访问控制,并强化组织治理。

API7 网关控制台单点登录示意图:管理员和开发人员登录 API7 控制台,控制台将身份认证委托给集中管理企业凭据的外部身份提供商,认证成功后用户进入控制台首页

主要特性

  • 使用 OpenID Connect(OIDC)、SAML、LDAP 或 CAS 协议与身份提供商集成。
  • 自定义 API7 控制台登录页上的 SSO 登录选项文本。例如,可以将 SSO 登录按钮自定义为 Log in with Employee ID
  • 启用 SCIM 配置,自动从身份提供商同步用户身份、角色和访问权限,防止配置不一致。
  • 定义角色映射和权限映射规则,根据用户在身份提供商中已有的属性,为导入用户分配 API7 角色和权限。
  • 减少凭证被窃取的风险,避免用户反复登录,缓解因管理多套凭证而导致的不安全存储和泄露问题。

使用场景

使用 SSO 简化控制台访问

对于使用 API7 网关管理 API 的组织,控制台是进行路由配置、性能跟踪和策略管理等工作的中心。启用 SSO 后,用户可以使用现有企业凭证访问控制台。这种方式简化了用户身份认证,降低了管理多套凭据的负担,并确保访问控制符合组织策略,从而兼顾安全性和效率。

同步角色和权限

API7 网关支持组织通过角色映射和权限映射规则实施一致的访问控制。这些映射会根据身份提供商定义的部门、职务或组成员身份等属性,为导入用户动态分配 API7 角色和权限。这种方式可以消除手动配置错误,确保所有用户获得符合组织策略的访问权限。

例如,身份提供商中的用户被分配到 CloudOps 团队后,可以自动获得 API7 控制台中的 Super Admin 角色,从而拥有管理 API7 网关资源所需的提升后管理权限。如果用户在身份提供商中的团队发生变化,用户下次登录 API7 网关时,角色映射会动态更新。同样,当身份提供商中的相关属性发生变化时,权限边界映射也会动态更新。

借助基于属性的评估机制,API7 网关可以让组织随着员工队伍或业务结构变化调整治理策略,确保策略持续有效并符合实际需求。

集中管理身份

当 API7 网关与身份提供商集成进行身份认证时,身份提供商会成为用户身份和访问控制的唯一事实来源。这意味着管理员只需管理身份提供商,就能完成用户配置、取消配置以及角色或属性更新等操作。身份提供商中的变更会同步到 API7 控制台,确保访问控制一致且准确,避免配置漂移,简化管理并防止产生孤立账号。

连接混合云环境中的访问

对于同时部署本地应用和云应用的组织,API7 控制台中的 SSO 选项有助于在两种环境之间提供一致的身份认证。许多组织仍然依赖关键的本地旧系统,这些系统可以使用 LDAP 进行身份认证,以兼容既有基础设施。同时,现代云原生平台通常设计为集成 OIDC 和 SAML 等协议,从而满足动态 IT 环境对扩展性和灵活性的要求。通过连接这些环境,SSO 可以简化身份管理、改善用户体验,并消除多套凭据和重复登录的需要。