8.2. 创建 S3 用户
若要测试网关,请创建 S3 用户并授予用户访问权限。man radosgw-admin
命令提供关于其他命令选项的信息。
注意
在多站点部署中,始终在 master zone group 的 master zone 中的主机上创建用户。
先决条件
-
root
或sudo
访问权限 - 已安装 Ceph 对象网关
流程
创建 S3 用户:
语法
radosgw-admin user create --uid=name --display-name="USER_NAME"
使用 S3 用户的名称替换 name :
示例
[root@host01 ~]# radosgw-admin user create --uid="testuser" --display-name="Jane Doe" { "user_id": "testuser", "display_name": "Jane Doe", "email": "", "suspended": 0, "max_buckets": 1000, "auid": 0, "subusers": [], "keys": [ { "user": "testuser", "access_key": "CEP28KDIQXBKU4M15PDC", "secret_key": "MARoio8HFc8JxhEilES3dKFVj8tV3NOOYymihTLO" } ], "swift_keys": [], "caps": [], "op_mask": "read, write, delete", "default_placement": "", "placement_tags": [], "bucket_quota": { "enabled": false, "check_on_raw": false, "max_size": -1, "max_size_kb": 0, "max_objects": -1 }, "user_quota": { "enabled": false, "check_on_raw": false, "max_size": -1, "max_size_kb": 0, "max_objects": -1 }, "temp_url_keys": [], "type": "rgw" }
验证输出,以确保
access_key
和secret_key
的值不包含 JSON 转义字符(\
)。访问验证需要这些值,但如果值包含 JSON 转义字符,则某些客户端将无法处理。要解决这个问题,请执行以下操作之一:- 删除 JSON 转义字符。
- 将字符串封装在引号内。
- 重新生成密钥并确保它不会包含 JSON 转义字符。
- 手动指定密钥和 secret。
不要删除正斜杠
/
,因为它是一个有效的字符。