用户管理
用户创建
执行下面的命令新建一个用户 (S3 接口):
radosgw-admin user create —uid={username} —display-name=”{display-name}” [—email={email}]
实例如下:
radosgw-admin user create —uid=johndoe —display-name=”John Doe” —email=john@example.com
获取用户信息
要获取一个用户的信息,你必须使用 user info 子命令并且制定一个用户 ID(—uid={username}) .
radosgw-admin user info —uid=johndoe
修改用户信息
要修改一个用户的信息,你必须指定用户的 ID (—uid={username}),还有 你想要修改的属性值。典型的修改项主要是 access 和secret 密钥,邮件地址,显 示名称和访问级别。举例如下:
radosgw-admin user modify —uid=johndoe —display-name=”John E. Doe” //修改的是display-name
用户启用/停用
当你创建了一个用户,用户默认情况下是处于启用状态的。然而,你可以暂停用户权 限并在以后随时重新启用它们。暂停一个用户,使用 user suspend 子命令 然后哦指定用户的 ID:
radosgw-admin user suspend —uid=johndoe
要重新启用已经被停用的用户,使用 user enable 子命令并指明用户的 ID.
radosgw-admin user enable —uid=johndoe
新建一个密钥
要为用户新建一个密钥,你需要使用 key create 子命令。对于用户来说,需要指明用户的 ID 以及新建的密钥类型为 s3 。要为子用户新建一个密钥,则需要指明子用户的 ID以及密钥类型为 swift 。实例如下:
radosgw-admin key create —subuser=johndoe:swift —key-type=swift —gen-secret
新建/删除 ACCESS 密钥
用户和子用户要能使用 S3 和Swift 接口,必须有 access 密钥。在你新 建用户或者子用户的时候,如果没有指明 access 和 secret 密钥,这两 个密钥会自动生成。你可能需要新建 access 和/或 secret 密钥,不管是 手动指定还是自动生成的方式。你也可能需要删除一个 access 和 secret 。可用的选项有:
—secret= 指明一个 secret 密钥 (e.即手动生成).
—gen-access-key 生成一个随机的 access 密钥 (新建 S3 用户的默认选项).
—gen-secret 生成一个随机的 secret 密钥.
—key-type= 指定密钥类型. 这个选项的值可以是: swift, s3
删除用户
删除用户时,这个用户以及他的子用户都会被删除。当然,如果你愿意,可以只删除子用户。要删除用户(及其子用户),可使用 user rm 子命令并指明用户 ID :
radosgw-admin user rm —uid=johndoe
只想删除子用户时,可使用 subuser rm 子命令并指明子用户 ID 。
radosgw-admin subuser rm —subuser=johndoe:swift
添加/删除 管理权限
Ceph 存储集群提供了一个管理API,它允许用户通过 REST API 执行管理功能。默认情况下,用户没有访问 这个 API 的权限。要启用用户的管理功能,需要为用 户提供管理权限。
执行下面的命令为一个用户添加管理权限:
radosgw-admin caps add —uid={uid} —caps={caps}
你可以给一个用户添加对用户、bucket、元数据和用量(存储使用信息)等数据的 读、写或者所有权限。举例如下:
—caps=”[users|buckets|metadata|usage|zone]=[*|read|write|read, write]”
实例如下:
radosgw-admin caps add —uid=johndoe —caps=”users=*”
要删除某用户的管理权限,可用下面的命令:
radosgw-admin caps rm —uid=johndoe —caps={caps}
展示用户列表
radosgw-admin user list
配额管理
设置用户配额
在你启用用户的配额前 ,你需要先设置配额参数。 例如:
radosgw-admin quota set —quota-scope=user —uid= [—max-objects=] [—max-size=]
实例如下:
radosgw-admin quota set —quota-scope=user —uid=johndoe —max-objects=1024 —max-size=1024
最大对象数和最大存储用量的值是负数则表