Partager via


Remplacement d'une autorisation

L'exécution d'une opération PUT sur une ressource autorisation spécifique remplace l'intégralité de la ressource utilisateur. Toutes les propriétés paramétrables par l'utilisateur, id, permissionMode et resource, doivent être soumises dans le corps pour effectuer le remplacement. Bien que toutes les propriétés paramétrables doivent être soumises dans le corps de la demande, elles ne doivent pas toutes être modifiées. Un jeton de ressource est créé lors du remplacement réussi de l'autorisation. Le nouveau jeton de ressource expire dans une heure, qui est la période par défaut, sauf substitution à l’aide de l’en-tête x-ms-documentdb-expiry-seconds .

Requête

Méthode URI de demande Description
PUT https://{databaseaccount}.documents.azure.com/dbs/{db-id}/users/{user-name}/permissions/{permission-name} Notez que {databaseaccount} est le nom du compte Azure Cosmos DB créé dans le cadre de votre abonnement. La valeur {db-id} correspond au nom/id généré par l’utilisateur de la base de données, et non à l’ID généré par le système (rid). La valeur {user-name} est le nom de l’utilisateur. La valeur {permission-name} est le nom de l’autorisation à remplacer.

En-têtes

Consultez En-têtes de requête REST Azure Cosmos DB communs pour les en-têtes utilisés par toutes les requêtes Cosmos DB.

En-tête Obligatoire Type Description
x-ms-documentdb-expiry-seconds Facultatif Integer Période de validité du jeton de ressource renvoyé par l'opération. Par défaut, un jeton de ressource est valide pendant une heure. Pour remplacer la valeur par défaut, affectez à cet en-tête la période de validité souhaitée, en secondes. La valeur de remplacement maximale est 18000, c'est-à-dire cinq heures.

body

Propriété Obligatoire Description
id Obligatoire Il s’agit d’un nom unique qui identifie l’autorisation, c’est-à-dire que deux autorisations appartenant à un utilisateur ne peuvent pas partager le même ID. L’ID ne doit pas dépasser 255 caractères
permissionMode Obligatoire Mode d’accès sur la ressource pour l’utilisateur : Tout ou Lecture. Tous fournissent un accès en lecture, écriture et suppression à une ressource. Lecture limite l'utilisateur à l'accès en lecture à la ressource.
resource Obligatoire Chemin d'accès adressable complet de la ressource associée à l'autorisation. Par exemple, dbs/volcanodb/colls/volcano1.
{  
    "id": "another_permission",  
    "permissionMode": "All",  
    "resource": "dbs/volcanodb/colls/volcano1"  
}  

response

En-têtes

Consultez En-têtes de réponse REST Azure Cosmos DB communs pour les en-têtes retournés par toutes les réponses Cosmos DB.

Codes d’état

Le tableau suivant répertorie les codes d'état courants renvoyés par cette opération. Pour obtenir la liste complète des codes status, consultez Codes d’état HTTP.

Code d'état HTTP Description
200 Ok L'opération de remplacement a réussi.
400 Demande incorrecte Le corps au format JSON n'est pas valide. Vérifiez qu'il ne manque pas d'accolades ou de guillemets. De plus, 400 est renvoyé quand au moins une des propriétés paramétrables ne se trouve pas dans le corps de la demande. Vérifiez que les trois propriétés définissables sont incluses.
404 Introuvable L’utilisateur à remplacer n’est plus une ressource, c’est-à-dire que l’autorisation a été supprimée.
409 Conflit L’ID fourni pour l’autorisation a été pris par une autorisation existante. 409 est également renvoyé quand la nouvelle autorisation a déjà été affectée à une autre autorisation pour l'utilisateur.

body

Propriété Description
_Débarrasser Il s’agit d’une propriété générée par le système. L’ID de ressource (_rid) est un identificateur unique qui est également hiérarchique en fonction de la pile de ressources sur le modèle de ressource. Il est utilisé en interne pour le positionnement et la navigation dans la ressource d'autorisation.
_Ts Il s’agit d’une propriété générée par le système. Elle spécifie l'horodateur de la dernière mise à jour de la ressource. La valeur est un horodateur.
_self Il s’agit d’une propriété générée par le système. Il s'agit de l'URI adressable unique pour la ressource.
_Etag Il s’agit d’une propriété générée par le système qui représente l’etag de ressource requis pour le contrôle d’accès concurrentiel optimiste.
_Jeton Il s’agit d’un jeton de ressource généré par le système pour la ressource et l’utilisateur particuliers.
{  
    "id": "another_permission",  
    "permissionMode": "All",  
    "resource": "dbs/volcanodb/colls/volcano1",  
    "_rid": "Sl8fAG8cXgBn6Ju2GqNsAA==",  
    "_ts": 1449605172,  
    "_self": "dbs\/Sl8fAA==\/users\/Sl8fAG8cXgA=\/permissions\/Sl8fAG8cXgBn6Ju2GqNsAA==\/",  
    "_etag": "\"00000f00-0000-0000-0000-566738340000\"",  
    "_token": "type=resource&ver=1&sig=liT1vyY6rvPBZXRuXNluPA==;A4zwoVw1GcQUSF3N2d1D5J1s3DhN0547KlhdYkkfT5UzGWecIDJf+LInlbYjqgZKwHKrFfeHLJWq0OFfH9KUOaeMCkPPlu8yKNM098las28ClqVNwmi9Ir\/jC3UVFU\/yFQl4z4wiMxxbrCkpnA\/ZsKqmxZ1LAosimPgF4zKvC9isWjgmB1N8+X9pH49wDg62tGkHF0HoSu+KpF7bkjP4VpHfo9u9jV86l7brrOvUYyE=;"  
}  
  

Exemple

PUT https://contosomarketing.documents.azure.com/dbs/volcanodb/users/a_user/permissions/a_permission HTTP/1.1  
x-ms-date: Tue, 08 Dec 2015 20:06:11 GMT  
authorization: type%3dmaster%26ver%3d1.0%26sig%3d8PTpiHHJvUq7ra07iWGYpiLJ%2fMyglgJZxfyGKHWjbaQ%3d  
Cache-Control: no-cache  
User-Agent: contoso/1.0  
x-ms-version: 2015-08-06  
Accept: application/json  
Host: contosomarketing.documents.azure.com  
Cookie: x-ms-session-token=866  
Content-Length: 554  
Expect: 100-continue  
Connection: Keep-Alive  
  
{  
    "id": "another_permission",  
    "permissionMode": "All",  
    "resource": "dbs/volcanodb/colls/volcano1",  
    "_rid": "Sl8fAG8cXgBn6Ju2GqNsAA==",  
    "_ts": 1449604760,  
    "_self": "dbs/volcanodb/users/a_user/permissions/a_permission",  
    "_etag": "\"00000e00-0000-0000-0000-566736980000\"",  
    "_token": "type=resource&ver=1&sig=zv2AYJFeWMhks0Ezv2WVKQ==;x2fUwajIajvwi+vfQ6GHmf82HTK4qppkhRHMk1Nx8ei0g8zuxIBQ6cyu0d3hOV06fC/PdyIj2/bmNCwpfkxFI++QI1eVPP0/tGTQuMPyqNVCCM5t8KFx6rVNUReBHlWNp0y8iAZ3pRvA2Wl6uaE0K7tFQKmPKqUbumYbOMWKk1kDCfCeCF0Qkt7RYUXlmvawFNoYnVRN/mgnpzX23vW63mU/GoeRXnMOI1HXcdrnf4M=;"  
}  
  
HTTP/1.1 200 Ok  
Cache-Control: no-store, no-cache  
Pragma: no-cache  
Content-Type: application/json  
Content-Location: https://contosomarketing.documents.azure.com/dbs/volcanodb/users/a_user/permissions/a_permission  
Server: Microsoft-HTTPAPI/2.0  
Strict-Transport-Security: max-age=31536000  
x-ms-last-state-change-utc: Sun, 29 Nov 2015 02:25:35.212 GMT  
etag: "00000f00-0000-0000-0000-566738340000"  
x-ms-resource-quota: permissions=2000000;  
x-ms-resource-usage: permissions=2;  
x-ms-schemaversion: 1.1  
x-ms-alt-content-path: dbs/volcanodb/users/a_user  
x-ms-content-path: Sl8fAG8cXgA=  
x-ms-quorum-acked-lsn: 866  
x-ms-session-token: 867  
x-ms-current-write-quorum: 3  
x-ms-current-replica-set-size: 4  
x-ms-request-charge: 9.9  
x-ms-serviceversion: version=1.5.57.3  
x-ms-activity-id: 4b91c955-ebd4-4059-a58e-91c99226f225  
Set-Cookie: x-ms-session-token=867; Domain=contosomarketing.documents.azure.com; Path=/dbs/volcanodb/users/a_user  
x-ms-gatewayversion: version=1.5.57.3  
Date: Tue, 08 Dec 2015 20:06:10 GMT  
Content-Length: 581  
  
{  
    "id": "another_permission",  
    "permissionMode": "All",  
    "resource": "dbs/volcanodb/colls/volcano1",  
    "_rid": "Sl8fAG8cXgBn6Ju2GqNsAA==",  
    "_ts": 1449605172,  
    "_self": "dbs\/Sl8fAA==\/users\/Sl8fAG8cXgA=\/permissions\/Sl8fAG8cXgBn6Ju2GqNsAA==\/",  
    "_etag": "\"00000f00-0000-0000-0000-566738340000\"",  
    "_token": "type=resource&ver=1&sig=liT1vyY6rvPBZXRuXNluPA==;A4zwoVw1GcQUSF3N2d1D5J1s3DhN0547KlhdYkkfT5UzGWecIDJf+LInlbYjqgZKwHKrFfeHLJWq0OFfH9KUOaeMCkPPlu8yKNM098las28ClqVNwmi9Ir\/jC3UVFU\/yFQl4z4wiMxxbrCkpnA\/ZsKqmxZ1LAosimPgF4zKvC9isWjgmB1N8+X9pH49wDg62tGkHF0HoSu+KpF7bkjP4VpHfo9u9jV86l7brrOvUYyE=;"  
}  
  

Voir aussi