云消息队列 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)为例进行说明。
流程概览
操作步骤
步骤一:配置第三方认证服务器
在左侧导航栏,选择。
在应用注册页面,单击新注册,在注册应用程序页面,完成相关配置后,单击注册。
说明重定向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 版控制台的访问链接与接口页面中查看。
完成注册后,如下所示:

在左侧导航栏,单击证书和密码,在客户端密码页签,单击新客户端密码。
在添加客户端密码面板,完成配置,然后单击添加。

步骤二:获取第三方认证服务器的相关信息
通过GET请求访问
https://login.microsoftonline.com/${租户ID}/v2.0/.well-known/openid-configuration获取认证信息。其中租户ID可以在应用的概述页面的概要区域中获取。
将获取到的认证信息,按照如下的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 AD在SSO登录时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 版实例所选VPC与SSO认证服务器间网络互通,以达到Confluent服务端向SSO服务器发起认证及跳转的目的。
一种可行方案是配置VPC公网NAT网关,请参见公网 NAT 网关。配置以下信息,其余配置项保持默认即可:
创建公网 NAT 网关并绑定 EIP:
地域:选择云消息队列 Confluent 版实例所在地域。
网络及可用区:选择云消息队列 Confluent 版实例所属的VPC和交换机。
网络类型:选择公网NAT网关。
弹性公网IP:选择已有或新购弹性公网IP。
配置 SNAT 条目:
SNAT条目粒度:选择VPC粒度,或选择交换机粒度并选择云消息队列 Confluent 版实例所属的交换机。
弹性公网IP:选择已有的弹性公网IP。
公网NAT网关以及弹性公网IP需额外计费,请参见相关产品计费文档。