ceph用户认证

这篇具有很好参考价值的文章主要介绍了ceph用户认证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Cephx认证机制

ceph使用cephx协议对客户端进行身份认证

cephx用于对ceph保存的数据进行认证访问和授权,用于对访问ceph的请求进行认证和授权检测,于mon通信的请求都要经过ceph认证通过,但是也可以在mon节点关闭cephx认证,但是关闭认证之后任何访问都将被允许,因此无法保证数据的安全性。

1、授权流程

每个 mon 节点都可以对客户端进行身份认证并分发秘钥,因此多个 mon 节点就不存在单点
故障和认证性能瓶颈。
mon 节点会返回用于身份认证的数据结构,其中包含获取 ceph 服务时用到的 session key,
session key 通 过 客 户 端 秘 钥 进 行 加 密 , 秘 钥 是 在 客 户 端 提 前 配 置 好 的 ,
/etc/ceph/ceph.client.admin.keyring。
客户端使用 session key 向 mon 请求所需要的服务,mon 向客户端提供一个 tiket,用于
向实际处理数据的 OSD 等服务验证客户端身份,MON 和 OSD 共享同一个 secret,因此
OSD 会信任所有 MON 发放的 tiket。(tiket存在有效期)

注意:

cephx身份验证功能仅限制在ceph的各组件之间,不能扩展到其他非ceph组件,ceph只负责认证授权,不能解决数据传输加密的问题
ceph用户认证,ceph,java,数据库

2、访问流程

无论ceph客户端是那种类型,例如块设备、对象存储、文件系统,ceph都会在存储中奖所有数据存储为对象:

ceph用户需要拥有存储池访问权限,才能读取和写入数据

ceph用户必须拥有执行权限才能使用ceph的管理命令

3、ceph用户

用户是指个人(ceph管理者)或系统参与者(MON/OSD/MDS)

通过创建用户,可以控制用户或哪个参与者能够访问ceph存储集群、以及可访问的存储池及存储中的数据。

ceph支持多种类型的用户,但可管理的用户都属于client类型

区分用户类型的原因在于,MON、OSD、MDS等系统组件特使用cephx协议,但是他们为非客户端。

通过点号来分割用户类型和用户名,格式为user.type 例如:client.admin

cephadmin@ceph-mon1:/etc/ceph$ cat ceph.client.admin.keyring
[client.admin]
	key = AQBqc6ZkIP0/BBAArwh+Kk3ynP/KDtHU6KL5dg==
	caps mds = "allow *"
	caps mgr = "allow *"
	caps mon = "allow *"
	caps osd = "allow *"

4、管理ceph用户

用户管理功能可让 Ceph 集群管理员能够直接在 Ceph 集群中创建、更新和删除用户。
在 Ceph 集群中创建或删除用户时,可能需要将密钥分发到客户端,以便将密钥添加到密
钥环文件中/etc/ceph/ceph.client.admin.keyring,此文件中可以包含一个或者多个用户认
证信息,凡是拥有此文件的节点,将具备访问 ceph 的权限,而且可以使用其中任何一个账
户的权限,此文件类似于 linux 系统的中的/etc/passwd 文件。

4.1 查看集群的用户列表

cephadmin@ceph-mon1:/etc/ceph$ ceph auth list

4.2 列出指定用户的详细信息

cephadmin@ceph-mon1:/etc/ceph$ ceph auth get osd.1
[osd.1]
	key = AQCfeKZk1lB5FRAAc80u9CRs/lx3Bnoq54pJrQ==
	caps mgr = "allow profile osd"
	caps mon = "allow profile osd"
	caps osd = "allow *"
exported keyring for osd.1

4.3 添加用户并赋权

cephadmin@ceph-mon1:~$ ceph auth add  client.qiang mon "allow r" osd "allow rwx pool=mypool"

#验证用户
cephadmin@ceph-mon1:/etc/ceph$ ceph auth get client.qiang
[client.qiang]
	key = AQCOGalksy8EDRAA3B+EFlRa//sUou4pSSkCcg==
	caps mon = "allow r"
	caps osd = "allow rwx pool=mypool"
exported keyring for client.qiang

#创建新用户并返回包含用户名和密钥的密钥文
cephadmin@ceph-mon1:~$ ceph auth get-or-create  client.weng mon "allow r" osd "allow rwx pool=mypool"

#把返回的用户名和密钥的密钥文输出保存到一个文件中
cephadmin@ceph-mon1:~$ ceph auth get-or-create  client.weng mon "allow r" osd "allow rwx pool=mypool" -o passwd.txt
或者
cephadmin@ceph-mon1:~$ ceph auth get-or-create  client.weng mon "allow r" osd "allow rwx pool=mypool" > passwd.txt

12、修改用户的权限
cephadmin@ceph-mon1:~$ ceph auth caps client.weng mon "allow rw" osd "allow r pool=mypool"

13、删除用户
cephadmin@ceph-mon1:~$ ceph auth  del client.weng

5、ceph授权和使能

ceph基于使能/能力(简称:caps)来描述用户可针对MON/OSD或MDS使用的授权范围级别。

能力一览表:

  • r:向用户授予读取权限。访问监视器(mon)以检索 CRUSH 运行图时需具有此能力。
  • w:向用户授予针对对象的写入权限。
  • x:授予用户调用类方法(包括读取和写入)的能力,以及在监视器中执行 auth 操作的能
    力。
  • *:授予用户对特定守护进程/存储池的读取、写入和执行权限,以及执行管理命令的能力
  • profile osd:授予用户以某个 OSD 身份连接到其他 OSD 或监视器的权限。授予 OSD 权
    限,使 OSD 能够处理复制检测信号流量和状态报告(获取 OSD 的状态信息)。
  • profile mds:授予用户以某个 MDS 身份连接到其他 MDS 或监视器的权限。
  • profile bootstrap-osd:授予用户引导 OSD 的权限(初始化OSD并将OSD加入ceph集群),
    授权给部署工具,使其在引导 OSD 时有权添加密钥。
  • profile bootstrap-mds:授予用户引导元数据服务器的权限,授权部署工具权限,使其在引
    导元数据服务器时有权添加密钥

MON 能力:

包括r/w/x和allow profile cap(ceph的运行图)
例如:
mon 'allow rwx'
mon 'allow profile osd'

OSD 能力:

包括 r、w、x、class-read、class-write(类读取))和 profile osd(类写入),另外 OSD 能力
还允许进行存储池和名称空间设置。
osd 'allow capability' [pool=poolname] [namespace=namespace-name]

MDS 能力:

只需要 allow 或空都表示允许。
mds 'allow'

还允许进行存储池和名称空间设置。
osd ‘allow capability’ [pool=poolname] [namespace=namespace-name]文章来源地址https://www.toymoban.com/news/detail-550883.html


**MDS 能力:**

```bash
只需要 allow 或空都表示允许。
mds 'allow'

到了这里,关于ceph用户认证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Spring Security-查询数据库认证

    Spring Security-查询数据库认证

    整合mybatis-plus 完成数据库操作 1.引入相关依赖 再父工程中 增加 mybatis-plus lombok mysql 相关依赖及版本号 再子项目中 引入  2.创建表 user_info 3.创建实体类 4.整合mybatis-plus ,创建接口 继承 BaseMapper 5.创建service 即UserDetailsService 接口实现类 6. 再启动类增加 mapperscan 或 再 4的接口增

    2024年01月18日
    浏览(46)
  • 达梦数据库配置SSL认证加密

    达梦数据库配置SSL认证加密

    OS Version:Kylin Linux Advanced Server release V10 (SP1) /(Tercel)-x86_64-Build19/20210319 DB Version:DM V8 1-2-18-21.06.24-142387-10013-ENT Pack4 OpenSSL:OpenSSL 1.1.1f JAVA:openjdk version “1.8.0_242” 64bit 参考手册:《DM8_DISQL使用手册》《DM8安全管理》《DM8程序员手册》 DM8 产品手册 | 达梦技术社区 1、配置ope

    2023年04月08日
    浏览(14)
  • 企业权限管理(八)-登陆使用数据库认证

    企业权限管理(八)-登陆使用数据库认证

    Spring Security 使用数据库认证 在 Spring Security 中如果想要使用数据进行认证操作,有很多种操作方式,这里我们介绍使用 UserDetails 、 UserDetailsService来完成操作。 UserDetails UserDetails 是一个接口,我们可以认为 UserDetails 作用是于封装当前进行认证的用户信息,但由于其是一个接

    2024年02月13日
    浏览(13)
  • 3.SpringSecurity基于数据库的认证与授权

    3.SpringSecurity基于数据库的认证与授权

    承接:2.SpringSecurity - 处理器简单说明-CSDN博客 我们之前学习的用户的信息都是配置在代码中,如下段代码所示 但是我们并不希望上面这样写,我们希望把用户的信息存入到数据库 用户实体类需要实现UserDetails接口,并实现该接口中的7个方法, UserDetails 接口的7个方法如下图

    2024年02月07日
    浏览(8)
  • 【数据库二】数据库用户管理与授权

    【数据库二】数据库用户管理与授权

    CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同,在存储或检索过程中不进行大小写转换。 下表显示了将各种字符串值保存到CHAR(4)和VARCHAR(4)列后的结果,说明了CHAR和VARCHAR之间的差别: 字节大小 char无论是否有值,都

    2024年02月09日
    浏览(10)
  • 【产品兼容认证】WhaleStudio 成功兼容TiDB数据库软件

    北京,2023年12月27日 - 平凯星辰(北京)科技有限公司(以下简称平凯星辰)旗下的 TiDB 产品与白鲸开源的 WhaleStudio 已成功完成产品兼容性认证。这一重要合作旨在为全球客户提供更大的价值。 WhaleStudio 是一款由 Apache DolphinScheduler 和 SeaTunnel 核心团队打造的商业版高性能分布

    2024年01月24日
    浏览(12)
  • sql server 截断和收缩所有用户数据库日志--用游标循环所有正常状态的用户数据库

    在服务器运维活动中,我们经常需要做一项工具就是将好多年的用户数据库日志文件截断并收缩为最小,以节省大量的磁盘空间。当数据库只有一两个时可以手动操作,但数据库数量众多时,就需要采用sql脚本,批量化执行这个过程。 本人写了一段这样的脚本。并且经过验证

    2024年02月06日
    浏览(47)
  • 数据库用户管理

    数据库用户管理

    1.新建用户: ‘用户名’:指定将创建的用户名. ‘来源地址’:指定新创建的用户可在哪些主机上登录,可使用IP地址、网段、主机名的形式,本地用户可用localhost,允许任意主机登录,可用通配符% ‘密码’:若使用明文密码,直接输入’密码’,插入到数据库时由Mysql自

    2024年02月16日
    浏览(11)
  • MySQL数据库用户管理

    MySQL数据库用户管理

    primary key主键约束:字段的值不能重复,不能为null,一个表只能有一个主键 unique key唯一性约束:字段的值不能重复,能为null,一个表可有多个唯一键 not null非空约束:字段的值不能为null default默认值约束: 字段的值如果没有设置则使用默认值自动填充 auto_increment自增约束:

    2024年02月08日
    浏览(11)
  • 【数据库 - 用户权限管理】(简略)

    【数据库 - 用户权限管理】(简略)

    目录 一、概述 二、用户权限类型 1.ALL PRIVILEGES 2.CREATE 3.DROP 4.SELECT 5.INSERT 6.UPDATE 7.DELETE 8.INDEX 9.ALTER 10.CREATE VIEW和CREATE ROUTINE 11.SHUTDOWN 12GRANT OPTION 三、语句格式 1.用户赋权 2.权限删除 3.用户删除 数据库用户权限管理是数据库系统中非常重要的一个方面,它用于控制不同用户访问

    2024年02月15日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包