ceph dashboard默认支持多用户,多权限管理,并且支持https认证,同时ceph不仅仅支持网页配置用户权限,并且还支持命令行创建。本次采用yum 安装的ceph进行展示用户权限的控制以及对应的管理
文章目录
Ceph Dashboard默认情况下是支持在ui前台中创建,并且也支持通过ceph dashboard创建的,可以根据实际情况自行抉择
关于ceph dashboard安装配置以及加入Prometheus,可以参考下面的文章, 此处只介绍权限控制管理
Prometheus监控Ceph集群并设置AlertManager告警
新闻联播老司机
用户和角色管理
密码策略
ceph dashboard支持密码策略的设定
最小密码长度(默认为8):
ceph dashboard set-pwd-policy-min-length <N>
最小密码复杂性(默认为10):
ceph dashboard set-pwd-policy-min-complexity <N>
密码复杂性是通过对 密码。复杂性计数从0开始。一个角色的评级依据是 按给定顺序执行以下规则。
用户管理
ceph dashboard前台支持多个用户帐户,每个用户帐户包括用户名、密码,可选名称和可选电子邮件地址。
如果通过Web UI创建新用户,则可以设置一个选项, 用户首次登录时必须分配新密码。
用户帐户存储在监视器的配置数据库中, 可用于所有ceph-mgr实例。
可以使用CLI命令来管理用户帐户:
显示用户
[root@ceph-01 ~]# ceph dashboard ac-user-show ["admin", "test", "abcdocker"] #也可以只显示某个用户详细信息 [root@ceph-01 ~]# ceph dashboard ac-user-show test #test为用户名称 {"username": "test", "lastUpdate": 1670080321, "name": null, "roles": ["read-only"], "password": "$2b$12$xBBipfoWEB0qd1ai9AJYr.iihD/l6d60V8yQTdY6KfyCTy.MJ2RtK", "email": null}
创建用户
ceph dashboard ac-user-create [--enabled] [--force-password] [--pwd_update_required] <username> -i <file-containing-password> [<rolename>] [<name>] [<email>] [<pwd_expiration_date>] #例如我这里创建一个用户为test,密码为123123的用户,并且权限设置为只读用户 [root@ceph-01 ~]# cat >/opt/secretkey<<EOF #创建密码文件 > 123123 > EOF [root@ceph-01 ~]# ceph dashboard ac-user-create test read-only -i /opt/secretkey
要绕过密码策略检查,请使用force-password选项。 添加选项pwd_update_required,以便新创建的用户具有 在首次登录后更改密码。
删除用户
ceph dashboard ac-user-delete <username>
更改密码
ceph dashboard ac-user-set-password [--force-password] <username> -i <file-containing-password>
更改密码哈希
ceph dashboard ac-user-set-password-hash <username> -i <file-containing-password-hash>
哈希必须是b加密哈希和salt,例如$2b$12$Pt3Vq/rDt2y9glTPSV.VFegiLkQeIpddtkhoFetNApYmIJOY8gau2。 这可用于从外部数据库导入用户。
修改用户(姓名和电子邮件)
ceph dashboard ac-user-set-info <username> <name> <email>
禁用用户
ceph dashboard ac-user-disable <username>
启用用户
ceph dashboard ac-user-enable <username>
用户角色和权限
控制面板提供了一组预定义的角色,系统角色,可由新的Ceph仪表板立即使用
系统角色列表包括
查看角色列表可以使用下面的命令
ceph dashboard ac-role-show [<rolename>]
使用命令行创建新的角色,可以使用下面的命令
创建角色:
ceph dashboard ac-role-create <rolename> [<description>]
删除角色:
ceph dashboard ac-role-delete <rolename>
将作用域权限添加到角色:
ceph dashboard ac-role-add-scope-perms <rolename> <scopename> <permission> [<permission>...]
从角色删除作用域权限:
ceph dashboard ac-role-del-scope-perms <rolename> <scopename>
要为用户分配角色,可以使用以下命令:
设置用户角色:
ceph dashboard ac-user-set-roles <username> <rolename> [<rolename>...]
将角色添加到用户:
ceph dashboard ac-user-add-roles <username> <rolename> [<rolename>...]
从用户删除角色:
ceph dashboard ac-user-del-roles <username> <rolename> [<rolename>...]
用户和自定义角色创建
这里我们创建一个用户和自定义和的角色,让角色具有管理RBD、查看并且对其他的功能具有只读访问权限。
创建用户
ceph dashboard ac-user-create bob -i <file-containing-password>
创建角色并指定作用域权限
ceph dashboard ac-role-create rbd/pool-manager ceph dashboard ac-role-add-scope-perms rbd/pool-manager rbd-image read create update delete ceph dashboard ac-role-add-scope-perms rbd/pool-manager pool read create
将角色与用户关联:
ceph dashboard ac-user-set-roles bob rbd/pool-manager read-only
Dashboard创建管理删除
如果通过web dashboard前台创建,就比通过命令行更简单了
相关文章:
- Ceph RBD 备份与恢复
- Ceph RGW高可用集群部署
- Kubernetes(k8s) 1.24 csi-ceph rbd使用手册
- Prometheus Grafana使用Ceph持久化并监控k8s集群