非永続ログイントークンは、POST リクエストを送信することでアクセスサービスから取得します。この非永続ログイントークンは、他のすべてのサービスでアイデンティティー資格証明として使用できます。非永続ログイントークンは、ユーザーのセッションタイムアウトプロパティーによって設定されるタイムアウト期間後に無効化されます。通常、デフォルトは、15 分です。DELETE リクエストは、ログアウトして非永続ログイントークンを無効化するために使用できます。
この非永続ログイントークンは、以前の認証セッション ID と同等です。これは、RESTful API バージョン 2 と RESTful API バージョン 1 の両方でサポートされています。これは、ID が作成されたクラスタノードに固有のもので、クラスタピア間では同期されません。
ユーザーは、RESTful API にアクセスするための永続トークンを作成することもできます。永続トークンの作成は、RESTful API バージョン 2 以降でのみサポートされています。永続トークンはクラスタピア間で同期されているため、あるクラスタノードで作成し、他のクラスタノードとの通信に使用できます。RESTful API ユーザーサービスを参照してください。
POST リクエストは、新しい非永続ログイントークンをリクエストします。成功すると、使用可能な RESTful API サービスのリストが格納された単一プロパティー access を持つ JSON オブジェクトとともに、HTTP ステータス 201 が返されます。トークンの名前を設定するために、オプションのプロパティー name を使用できます。
作成リクエストの例:
POST /api/access/v2 HTTP/1.1 Host: zfs-storage.example.com:215 X-Auth-User: root X-Auth-Key: password-xxx
リクエストに成功すると、HTTP ステータス 201 (Created) と、X-Auth-Session HTTP ヘッダーを介して非永続ログイントークンを返します。レスポンス本文には、このログインを介してアクセス可能なサービスのリストが含まれます。
レスポンスヘッダー:
HTTP/1.1 201 Created X-Auth-Session: puPnHZKgSrUmXqYzOwFCrGcLOGwPODj X-Auth-Name: REST-YG02oRod Content-Type: application/json Content-Length: 378 X-Zfssa-Access-Api: 1.0 { "access": { "services":[{ ... }] } }
空の DELETE は、ログアウトして非永続ログイントークンを無効にするリクエストを送信します。
ログアウトリクエストの例:
DELETE /api/access/v2 HTTP/1.1 X-Auth-Session: puPnHZKgSrUmXqYzOwFCrGcLOGwPODj
結果例:
HTTP/1.1 204 No Content X-Zfssa-Access-Api: 1.0