Go to main content

Guide RESTful API des systèmes Oracle® ZFS Storage Appliance, version OS8.8.x

Quitter la vue de l'impression

Mis à jour : Août 2021
 
 

Jetons d'authentification

Pour obtenir un jeton d'authentification non persistant à partir du service d'accès, envoyez une demande POST. Ce jeton de connexion non persistant peut servir d'informations d'identification à tous les autres services. Il est invalidé après un délai d'expiration défini à l'aide de la propriété d'expiration de session de l'utilisateur. La valeur par défaut est généralement de 15 minutes. La demande DELETE permet de se déconnecter et d'invalider le jeton de connexion non persistant.

Ce jeton de connexion non persistant est l'équivalent de l'ancien ID session d'authentification. Il est pris en charge dans les versions 1 et 2 de l'API RESTful. Il est spécifique au noeud de cluster sur lequel l'ID a été créé et n'est pas synchronisé entre les pairs de cluster.

Un utilisateur peut également créer des jetons persistants pour accéder à l'API RESTful. La création de jetons persistants n'est prise en charge que dans les versions 2 et supérieures de l'API RESTful. Les jetons persistants sont synchronisés entre les pairs de cluster et peuvent être créés sur un noeud de cluster pour communiquer avec un autre. Reportez-vous à Service utilisateur de l'API RESTful.

Création d'un jeton de connexion non persistant

Une demande POST permet de réclamer un nouveau jeton de connexion non persistant. En cas de réussite, un statut HTTP de 201 est renvoyé avec un objet JSON possédant une propriété unique, access, qui contient la liste des services de l'API RESTful disponibles. Une propriété facultative, name, permet de définir le nom du jeton.

Exemple de demande de création :

POST /api/access/v2 HTTP/1.1
Host: zfs-storage.example.com:215
X-Auth-User: root
X-Auth-Key: password-xxx

En cas de réussite de la demande, le code de statut HTTP 201 (Created) est renvoyé avec un jeton de connexion non persistant via l'en-tête HTTP X-Auth-Session. Le corps du texte de la réponse contient une liste des services accessibles via cette connexion.

En-tête de réponse :

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":[{
            ...
        }]
    }
}

Déconnexion et suppression d'un jeton de connexion non persistant

Une demande DELETE vide envoie une demande de déconnexion et d'invalidation du jeton de connexion non persistant.

Exemple de demande de déconnexion :

DELETE /api/access/v2 HTTP/1.1
X-Auth-Session: puPnHZKgSrUmXqYzOwFCrGcLOGwPODj

Exemple de résultat :

HTTP/1.1 204 No Content
X-Zfssa-Access-Api: 1.0