ZStack AIOS

使用Keycloak配置统一认证

完整平台用户手册,包含基础云平台能力与 AIOS 相关章节。

本章节以Keycloak为例,介绍ZStack Cloud以OIDC协议集成统一认证系统的方法。
本场景中的信息基于以下资源或权限要求:
  • 用户拥有Keycloak控制台的管理员权限。有关更多信息,请参阅Keycloak官方文档。
  • 用户的ZStack Cloud环境已安装有效的租户管理模块许可证。
  1. 创建Keycloak客户端。
    1. 登录Keycloak控制台。
    2. 在左侧导航栏中,点击客户端管理。
    3. 在客户端页面,点击创建客户端。


    4. 设置客户端ID,并将客户端类型设置为OpenID Connect。
    5. 保存后,点击凭证,记录客户端密码的值,这些信息将在后续步骤“添加并配置统一认证服务器”时使用。
  2. 创建Keycloak群组和用户。
    1. 点击群组管理 > 创建群组,输入群组名称,然后点击创建。


    2. 点击用户管理 > 添加用户,输入用户名和其他信息,然后点击加入群组,选择刚刚创建的群组,最后完成创建。


    3. 在用户详情页的证书子页面,点击设置密码。


  3. 在ZStack Cloud中,添加并配置统一认证服务器。
    1. 登录ZStack Cloud。
    2. 在主菜单中,点击运营管理 > 租户管理 > 统一认证SSO > 添加统一认证服务器。
    3. 在选择服务器类型弹窗中,选择OIDC,然后点击确定。
    4. 在添加统一认证服务器页面,需完成服务器配置、同步映射规则、确认信息三个步骤。
      1. 对于步骤1:服务器配置,需完成以下操作:
        • 对于认证供应商,选择标准协议。
        • 对于Client ID,填入设置的客户端ID。
        • 对于Client Secret,填入从凭证中获取到的客户端密码。
        • 对于Scope,填入从客户端作用域的映射子页面中获取到的值,例如:groups。
        • 对于Authorization Request URL,填入从领域设置的终端节点中获取到的authorization_endpoint的值,例如:http://172.25.126.217:8000/realms/ZSCloud/protocol/openid-connect/auth,其中http://172.25.126.217:8000/realms/ZSCloud替换为实际使用的领域值。
        • 对于Token Request URL,填入从领域设置的终端节点中获取到的token_endpoint的值,例如:http://172.25.126.217:8000/realms/ZSCloud/protocol/openid-connect/token,其中http://172.25.126.217:8000/realms/ZSCloud替换为实际使用的领域值。
        • 对于Userinfo Request URL,填入从领域设置的终端节点中获取到的userinfo_endpoint的值,例如:http://172.25.126.217:8000/realms/ZSCloud/protocol/openid-connect/userinfo,其中http://172.25.126.217:8000/realms/ZSCloud替换为实际使用的领域值。
        • 对于Logout URL,填入从领域设置的终端节点中获取到的end_session_endpoint的值,例如:http://172.25.126.217:8000/realms/ZSCloud/protocol/openid-connect/logout,其中http://172.25.126.217:8000/realms/ZSCloud替换为实际使用的领域值。
      2. 对于步骤2:同步映射规则,可参考从领域设置的终端节点中获取到的claims_supported的值,例如:preferred_username。
      3. 对于步骤3:确认信息,确认配置信息无误后,点击完成。
    5. 成功添加统一认证服务器后,复制平台免密登录URL。
  4. 为统一认证用户配置角色或加入项目。
    需提前在ZStack Cloud为统一认证用户配置角色或加入项目,否则将无访问资源权限。
    1. 返回ZStack Cloud。
    2. 在主菜单中,点击运营管理 > 租户管理 > 用户 > 统一认证用户。
    3. 在统一认证用户子页面,选择从统一认证系统同步过来的的用户,然后点击操作 > 加入项目。
    4. 在加入项目弹窗中,选择项目和项目角色,然后点击确定。
至此,您已完成统一认证配置。您可在浏览器中输入平台免密登录URL,通过统一认证系统访问ZStack Cloud。
使用Keycloak配置统一认证 | 完整用户手册 | AIOS | ZStack 资源中心