Vous pouvez créer des jetons de connexion REST persistants ou non, consulter les propriétés des jetons et supprimer ces derniers. Les propriétés des jetons de connexion REST sont en lecture seule après la création de ces derniers. Un jeton est accessible au moyen de sa valeur ou de son ID.
Exemple 3 Création d'un jeton de connexion RESTLe nom d'utilisateur et le mot de passe sont obligatoires pour la création d'un jeton de connexion REST.
Définissez le nom name du jeton. Par défaut, la valeur de preserve est false et celle d'expiration, 900. Si vous définissez preserve sur true, vous devez entrer un nombre de secondes pour expiration.
N'oubliez pas d'enregistrer la valeur X-Auth-Session du résultat. Pour plus d'informations, reportez-vous à Jetons de connexion REST.
Exemple de demande :
POST /api/user/v2/users/test_user/preferences/tokens HTTP/1.1 Host: zfs-storage.example.com:215 X-Auth-User: test_user X-Auth-Key: password-xxx Content-Type: application/json {"name": "Test Token"}
Exemple de résultat :
HTTP/1.1 201 Created ... X-Auth-Session: JjZJsZrVQfbZULyAuvSJjTftnBHCcQT { "token": { "href": "/api/user/v2/users/test_user/preferences/tokens/fb65a127-a04c-4f58-bc52-efa884447efb", "name": "Test Token", "token_username": "test_user", "preserve": false, "expiration": "2020-04-30T02:33:44Z", "id": "fb65a127-a04c-4f58-bc52-efa884447efb" } }
Exemple de demande :
POST /api/user/v2/users/test_user/preferences/tokens HTTP/1.1 Host: zfs-storage.example.com:215 X-Auth-User: test_user X-Auth-Key: password-xxx Content-Type: application/json {"name": "Another Token", "preserve": true, "expiration": 3600}
Exemple de résultat :
HTTP/1.1 201 Created ... X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK { "token": { "href": "/api/user/v2/users/test_user/preferences/tokens/21f981ad-6221-4fb4-a7d1-dd5560256dfb", "name": "Another Token", "token_username": "test_user", "preserve": true, "expiration": "2020-04-30T03:20:31Z", "id": "21f981ad-6221-4fb4-a7d1-dd5560256dfb" } }Exemple 4 Enumération de tous les jetons de l'utilisateur spécifié
Exemple de demande :
GET /api/user/v2/users/test_user/preferences/tokens HTTP/1.1 X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK
Exemple de résultat :
{ "tokens": [{ "name": "Another Token", "token_username": "test_user", "preserve": true, "expiration": "2020-04-30T03:20:31Z", "id": "21f981ad-6221-4fb4-a7d1-dd5560256dfb", "href": "/api/user/v2/users/testuser1/preferences/tokens/21f981ad-6221-4fb4-a7d1-dd5560256dfb" },{ "name": "Test Token", "token_username": "test_user", "preserve": false, "expiration": "2020-04-30T02:33:44Z", "id": "fb65a127-a04c-4f58-bc52-efa884447efb", "href": "/api/user/v2/users/testuser1/preferences/tokens/fb65a127-a04c-4f58-bc52-efa884447efb" }] }Exemple 5 Obtention d'un jeton spécifique au moyen de sa valeur
Exemple de demande :
GET /api/user/v2/users/test_user/preferences/tokens?token=pviHrthBGQhGZHoPuqxFQrDcCPZgwEK HTTP/1.1 X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK
Exemple de résultat :
{ "token": { "href": "/api/user/v2/users/test_user/preferences/tokens/21f981ad-6221-4fb4-a7d1-dd5560256dfb", "name": "Another Token", "token_username": "test_user", "preserve": true, "expiration": "2020-04-30T03:20:31Z", "id": "21f981ad-6221-4fb4-a7d1-dd5560256dfb" } }Exemple 6 Obtention d'un jeton spécifique au moyen de son ID
GET /api/user/v2/users/test_user/preferences/tokens/21f981ad-6221-4fb4-a7d1-dd5560256dfb HTTP/1.1 X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK
Le résultat est identique au précédent.
Exemple 7 Suppression d'un jeton au moyen de sa valeurExemple de demande :
DELETE /api/user/v2/users/test_user/preferences/tokens?token=pviHrthBGQhGZHoPuqxFQrDcCPZgwEK HTTP/1.1 X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK
Exemple de résultat :
HTTP/1.1 204 No ContentExemple 8 Suppression d'un jeton au moyen de son ID
DELETE /api/user/v2/users/test_user/preferences/tokens/21f981ad-6221-4fb4-a7d1-dd5560256dfb HTTP/1.1 X-Auth-Session: pviHrthBGQhGZHoPuqxFQrDcCPZgwEK