使用SSO登录Control Center

云消息队列 Confluent 版支持SSO登录Control Center,本文为您介绍使用SSO登录Control Center前的配置操作。

背景

SSO(Single Sign On,单点登录),是一种统一的身份验证机制,允许用户通过一次登录访问多个相互信任的应用系统。云消息队列 Confluent 版支持第三方SSO登录Control Center,简化了登录流程,加强了密码安全管理,实现权限的集中管理,降低运维的复杂度。

注意事项

  • Confluent Platform 7.5及以上版本支持SSO登录功能,若实例版本低于7.5,请优先升级实例版本。

  • 云消息队列 Confluent 版目前仅支持Oauth协议的SSO登录。

  • 本文以微软的身份和访问管理服务Azure AD(Azure Active Directory)为例进行说明。

流程概览

image

操作步骤

步骤一:配置第三方认证服务器

  1. 登录 Microsoft Entra 管理中心

  2. 在左侧导航栏,选择应用程序 > 应用注册

  3. 应用注册页面,单击新注册,在注册应用程序页面,完成相关配置后,单击注册

    说明

    重定向URI的地址格式为:https://<Control Center base URL>/api/metadata/security/1.0/oidc/authorization-code/callback ,其中Control Center base URL云消息队列 Confluent 版实例CONTROL_CENTER服务的公网链接地址(不包含端口号)。CONTROL_CENTER服务的公网链接地址可以在云消息队列 Confluent 版控制台访问链接与接口页面中查看。

    image

  4. 完成注册后,如下所示:

    image

  5. 在左侧导航栏,单击证书和密码,在客户端密码页签,单击新客户端密码

  6. 添加客户端密码面板,完成配置,然后单击添加

    image

步骤二:获取第三方认证服务器的相关信息

  1. 通过GET请求访问https://login.microsoftonline.com/${租户ID}/v2.0/.well-known/openid-configuration获取认证信息。其中租户ID可以在应用的概述页面的概要区域中获取。

    image

  2. 将获取到的认证信息,按照如下的JSON模板进行组装。

    {
        "ssoConfig": {
            "ClientId": "",
            "TokenBaseEndpointUri": "",
            "Issuer": "",
            "ClientSecret": "",
            "AuthorizeBaseEndpointUri": "",
            "JwksEndpointUri": ""
        }
    }

    模板中的参数和获取的信息对应关系如下:

    模板参数

    获取的认证信息

    备注

    ClientId

    应用程序(客户端) ID。可以在应用的概述页面的概要区域中获取。

    TokenBaseEndpointUri

    token_endpoint

    Issuer

    issuer

    ClientSecret

    机密 ID。可以在应用的证书和密码页面的客户端密码页签中获取。

    AuthorizeBaseEndpointUri

    authorization_endpoint

    JwksEndpointUri

    jwks_uri

步骤三:配置SSO登录账号的权限

一旦开启SSO认证后,Control Center仅允许SSO方式登录,所以需要提前为云消息队列 Confluent 版实例创建一个SSO认证登录账号。Azure ADSSO登录时profile信息是账号的Email,所以需要首先在Confluent Control 控制台为主账号(Email)授予所有集群的SysAdmin权限,方便后期使用该账号给其他SSO用户添加资源权限。授权操作请参见RBAC授权

需要授权的集群资源和角色如下所示:

集群

资源

角色

Kafka cluster

Cluster

SystemAdmin

KSQL

Cluster

SystemAdmin

Schema Registry

Cluster

SystemAdmin

Connect cluster

Cluster

SystemAdmin

步骤四:提交工单申请开通SSO登录认证

将步骤二中组装好的JSON数据、云消息队列 Confluent 版实例所在的地域和实例ID附在工单中,提交工单进行申请开通。

步骤五:配置VPC公网NAT网关

请确保部署云消息队列 Confluent 版实例所选VPCSSO认证服务器间网络互通,以达到Confluent服务端向SSO服务器发起认证及跳转的目的。

一种可行方案是配置VPC公网NAT网关,请参见公网 NAT 网关。配置以下信息,其余配置项保持默认即可:

  1. 创建公网 NAT 网关并绑定 EIP:

    • 地域:选择云消息队列 Confluent 版实例所在地域。

    • 网络及可用区:选择云消息队列 Confluent 版实例所属的VPC和交换机。

    • 网络类型:选择公网NAT网关

    • 弹性公网IP选择已有新购弹性公网IP

  2. 配置 SNAT 条目:

    • SNAT条目粒度:选择VPC粒度,或选择交换机粒度并选择云消息队列 Confluent 版实例所属的交换机。

    • 弹性公网IP:选择已有的弹性公网IP。

重要

公网NAT网关以及弹性公网IP需额外计费,请参见相关产品计费文档。