X-Storage-Url和X-Auth-Token?

时间:2013-04-29 09:23:14

标签: openstack openstack-swift

我正在按照教程安装swift openstacl对象存储,在lattests步骤中它要求我这样做:------- “curl -v -H'X-Storage-User:测试:测试者'-H'X-Storage-Pass:测试'url:8080 / auth / v1.0“ ------获取X-Storage-Url和X-Auth-Token在那之后我可以通过输入来获得一个帐户:curl -v -H'X-Auth-Token:token-from-x-auth-token-above'url-from-x-storage-url-above

有任何人知道这样的命令可能意味着什么吗?我真的不明白它的规则!我知道这是识别之王,但究竟是什么意思呢?

谢谢

2 个答案:

答案 0 :(得分:7)

简而言之,您将密码和帐户发送给Swift,然后Swift将令牌和网址发回给您。令牌代表经过身份验证的帐户/密码对。 URL代表谁负责此帐户。在实际设置中,可以有两组代理服务器:A和B.A仅用于身份验证。 B用于存储访问。身份验证后,A会将X-Storage-Url发回给用户,X-Storage-Url是B的杜曼名称。

您可以使用令牌和网址访问存储空间。 例如,

curl -v -H 'X-Auth-Token: <token>' <url>表示您可以访问该帐户

curl -v -H 'X-Auth-Token: <token>' <url>/container_name -XPUT表示您要在帐户下创建容器container_name

curl -v -H 'X-Auth-Token: <token>' <url>/container_name/object_name -T localfile表示您要将localfile上传到容器并将其命名为object_name

令牌由中间件生成。在Swift中,您可以选择3个auth中间件:tempauth,swauth和keystone。

如果您有负载平衡问题,也可以为不同的帐户设置不同的X-Storage-Urls。

答案 1 :(得分:1)

enter code here curl curl is a tool to transfer data from or to a server, using one of the supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET and TFTP). The command is designed to work without user interaction

一旦发出

curl -i -X GET -H 'X-Auth-User: myaccount:me' -H 'X-Auth-Key: secretpassword' http://127.0.0.1:8080/auth/v1.0

curl正在设置Header即Key,Value Pair to Swift Auth System以使用TempAuth系统进行验证 标题是

X-Auth-User
X-Auth-Key

最后,如果AUTH通过

,你会得到一个OK
HTTP/1.1 200 OK

如果您看到标题,它将包含

之类的信息
X-Storage-Url: http://127.0.0.1:8080/v1/AUTH_myaccount
X-Auth-Token: AUTH_tk7790238141c343bdb6ad1303e3d3bc00
Content-Type: text/html; charset=UTF-8
X-Storage-Token: AUTH_tk7790238141c343bdb6ad1303e3d3bc00
Content-Length: 0
X-Trans-Id: txab863ae755ec4c8d9aa19-0054bfda6f
Date: Wed, 21 Jan 2015 16:57:19 GMT

以下是解释TempAuth

的示例链接