当前位置: 首页 > 文档资料 > Ceph 中文文档 >

认证

优质
小牛编辑
140浏览
2023-12-01

需要认证的 Swift API 请求必须在请求头里带上 X-Storage-Token 认证令牌。此令牌可以从 RADOS 网关、或别的认证器获取,要从 RADOS 网 关获取的话需创建用户,例如:

sudo radosgw-admin user create --uid="{username}" --display-name="{Display Name}"

For details on RADOS Gateway administration, see radosgw-admin.

获取认证

To authenticate a user, make a request containing an X-Auth-User and a X-Auth-Key in the header. 要对用户进行身份认证,需要构建一个请求头中有 X-Auth-UserX-Auth-Key 的请求

语法

GET /auth HTTP/1.1
Host: swift.radosgwhost.com
X-Auth-User: johndoe
X-Auth-Key: R7UUOLFDI2ZI9PRCQ53K

请求头

X-Auth-User

描述:用来认证的 RADOS 网关用户的用户名
类型:String
是否必需:Yes

X-Auth-Key

描述:RADOS 网关用户的密钥
类型:String
是否必需:Yes

响应头

服务器的响应应该包含一个 X-Auth-Token 值。响应也可能包含一个 X-Storage-Url ,它提供 {api version}/{account} 前缀,在整个API 文档的其他请求中指定的前缀。

X-Storage-Token

描述:在请求中 X-Auth-User 指定的用户的认证令牌
类型:String

X-Storage-Url

描述:URL 和为用户准备的 {api version}/{account} 路径.
类型:String

一个典型的响应类似下面这样:

HTTP/1.1 204 No Content
Date: Mon, 16 Jul 2012 11:05:33 GMT
Server: swift
X-Storage-Url: https://swift.radosgwhost.com/v1/ACCT-12345
X-Auth-Token: UOlCCC8TahFKlWuv9DB09TWHF0nDjpPElha0kAa
Content-Length: 0
Content-Type: text/plain; charset=UTF-8