-
Notifications
You must be signed in to change notification settings - Fork 352
5、用户管理
wanghe edited this page Jul 25, 2024
·
3 revisions
系统会初始化 admin 超级管理员(默认密码 kubepi),拥有系统所有资源的管理权限
- 创建用户 user1,拥有集群管理员和用户管理员角色
- Manage Clusters: 集群管理员,拥有集群对象的所有权限
- Manage RBAC: 角色与用户管理员,拥有角色和用户对象的所有权限
- ReadOnly: 只读用户,只拥有所有对象的访问权限
- Common User: 普通用户,只拥有集群对象访问权限
创建角色 role1,拥有用户、角色、镜像仓库和系统日志的所有操作权限
- 管理员可以将 LDAP 外部用户系统中的用户同步到系统中,同时允许最终用户在登录 KubePi 时使用其 LDAP 凭据进行身份验证
- 1.1、创建 Keycloak 持久化目录,并将权限设置为 1000
mkdir ./data
chown 1000:1000 ./data
- 1.2、运行 Keycloak
docker run --name keycloak-test -d \
-p 8080:8080 \
-v ./data:/opt/keycloak/data/h2 \
-e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=123456 \
-e PROXY_ADDRESS_FORWARDING=true \
-e KC_PROXY=edge \
-e KC_HOSTNAME_STRICT_BACKCHANNEL=false \
quay.io/keycloak/keycloak:21.1.1 \
start-dev
注意:Valid redirect URIs:KubePi 访问地址+/kubepi/api/v1/sso/callback
查看 Client Secret
查看 issuer 接口地址
配置参数描述
协议:SSO认证协议
接口地址:issuer URL
客户端ID:kubepi
客户端密钥:Z8hvxryA2ErZtXTqMwdwtIVjaskB3GXb
勾选功能开启
- 1.1、创建 Keycloak 持久化目录,并将权限设置为 1000
mkdir ./data
chown 1000:1000 ./data
- 1.2、运行 Keycloak
docker run --name keycloak-test -d \
-p 8080:8080 \
-v ./data:/opt/keycloak/data/h2 \
-e KEYCLOAK_ADMIN=admin -e KEYCLOAK_ADMIN_PASSWORD=123456 \
-e PROXY_ADDRESS_FORWARDING=true \
-e KC_PROXY=edge \
-e KC_HOSTNAME_STRICT_BACKCHANNEL=false \
quay.io/keycloak/keycloak:21.1.1 \
start-dev
由于 KeyCloak 默认 SAML2 客户端属性映射中不会存在用户名和邮箱,因此需要添加此属性映射
注意:Client ID:kubepi访问地址+/kubepi/api/v1/sso/saml/metadata
配置高级参数
Assertion Consumer Service POST Binding URL: kubepi访问地址+/kubepi/api/v1/sso/saml/metadata
Logout Service POST Binding URL:kubepi访问地址+/kubepi/api/v1/sso/saml/
添加 Client scope
配置参数描述
协议:SSO认证协议
接口地址: IDP元数据URL(可到Keycloak realm-settings--->Endpoints --->SAML 2.0 Identity Provider Metadata获取地址)
Certificate:
Certificate Key:
以上两个参数可使用命令生成:openssl req -x509 -newkey rsa:2048 -keyout kubepi.com.key -out kubepi.com.cert -days 365 -nodes -subj "/CN=kubepi.com"
勾选功能开启