可通过发送 POST 请求从访问服务获取验证会话 ID。所有其他服务可将此验证会话 ID 用作为身份凭证。当超过用户的会话超时属性所设置的超时期限后,此验证 ID 将失效。默认值通常为 15 分钟。DELETE 请求可用于注销会话 ID 并使会话 ID 无效。
当客户机可以重新发送每个请求及其验证信息时,无需验证会话。由于 RESTful API 操作没有状态,因此仅存储验证 ID。
空白 POST 请求会请求新的登录对话。成功后,将返回 201 状态的 HTTP 以及具有单个属性 "access" 的 JSON 对象,此属性包含可用的 RESTful API 服务列表。
登录请求示例:
POST /api/access/v1 HTTP/1.1 Host: zfs-storage.example.com X-Auth-User: root X-Auth-Key: letmein-xxx
成功登录后将返回 HTTP 状态 201 (Created),以及通过 X-Auth-Session HTTP 头的会话 ID。响应正文包含通过此登录可访问的服务的列表。
响应标题:
HTTP/1.1 201 Created X-Auth-Session: guigqpQRE4g89ngb Content-Type: application/json Content-Length: 378 X-Zfssa-Access-Api: 1.0 { "access": { "services":[{ ... }] } }
空 DELETE 发送请求以注销并使会话失效。
注销请求示例:
DELETE /api/access/v1 HTTP/1.1 X-Auth-Session: guigqpQRE4g89ngb
响应示例:
HTTP/1.1 204 No Content X-Zfssa-Access-Api: 1.0