Ersetzen einer Berechtigung

Das Ausführen eines PUT-Vorgangs für eine bestimmte Berechtigungsressource ersetzt die gesamte Benutzerressource. Alle vom Benutzer festlegbaren Eigenschaften, die id, permissionMode und resource, müssen im Textkörper gesendet werden, damit die Ersetzung ausgeführt werden kann. Während alle festlegbaren Eigenschaften im Anforderungstext gesendet werden müssen, müssen nicht alle Eigenschaften Änderungen aufweisen. Ein neues Ressourcentoken wird nach der erfolgreichen Ersetzung der Berechtigung erstellt. Das neue Ressourcentoken läuft in einer Stunde ab, was der Standardzeitraum ist, es sei denn, es wird mithilfe des x-ms-documentdb-expiry-seconds-Headers überschrieben.

Anforderung

Methode Anforderungs-URI BESCHREIBUNG
PUT https://{databaseaccount}.documents.azure.com/dbs/{db-id}/users/{user-name}/permissions/{permission-name} Beachten Sie, dass {databaseaccount} der Name des Azure Cosmos DB-Kontos ist, das unter Ihrem Abonnement erstellt wurde. Der Wert {db-id} ist der vom Benutzer generierte Name/id der Datenbank, nicht die vom System generierte ID (rid). Der Wert {user-name} ist der Name des Benutzers. Der Wert {permission-name} ist der Name der zu ersetzenden Berechtigung.

Header

Informationen zu Headern, die von allen Cosmos DB-Anforderungen verwendet werden, finden Sie unter Allgemeine Azure Cosmos DB-REST-Anforderungsheader .

Header Erforderlich type BESCHREIBUNG
x-ms-documentdb-expiry-seconds Optional Integer Die Gültigkeitsdauer des vom Vorgang zurückgegebenen Ressourcentokens. Ein Ressourcentoken ist standardmäßig eine Stunde gültig. Um die Standardeinstellung außer Kraft zu setzen, legen Sie für diesen Header die gewünschte Gültigkeitsdauer in Sekunden fest. Der maximale Außerkraftsetzungswert ist 18.000 (entspricht fünf Stunden).

Body

Eigenschaft Erforderlich BESCHREIBUNG
id Erforderlich Es ist ein eindeutiger Name, der die Berechtigung identifiziert, d. h. keine zwei Berechtigungen, die einem Benutzer gehören, können dieselbe ID verwenden. Die ID darf nicht länger als 255 Zeichen sein.
permissionMode Erforderlich Der Zugriffsmodus für die Ressource für den Benutzer: All oder Read. Alle bieten Lese-, Schreib- und Löschzugriff auf eine Ressource. Mithilfe von Read verfügt der Benutzer lediglich über Lesezugriff auf die Ressource.
resource Erforderlich Der vollständige adressierbare Pfad der Ressource, der der Berechtigung zugeordnet ist. Beispiel: dbs/volcanodb/colls/volcano1.
{  
    "id": "another_permission",  
    "permissionMode": "All",  
    "resource": "dbs/volcanodb/colls/volcano1"  
}  

Antwort

Header

Informationen zu Headern, die von allen Cosmos DB-Antworten zurückgegeben werden, finden Sie unter Allgemeine Azure Cosmos DB-REST-Antwortheader .

Statuscodes

In der folgenden Tabelle sind die allgemeinen Statuscodes aufgeführt, die von diesem Vorgang zurückgegeben werden. Eine vollständige Liste der status Codes finden Sie unter HTTP-Statuscodes.

HTTP-Statuscode BESCHREIBUNG
200 Ok Der Ersetzungsvorgang war erfolgreich.
400 – Ungültige Anforderung Der JSON-Text ist ungültig. Überprüfen Sie, ob geschweifte Klammern oder Anführungszeichen fehlen. Zusätzlich wird 400 zurückgegeben, wenn mindestens eine der festlegbaren Eigenschaften nicht im Anforderungstext vorhanden ist. Überprüfen Sie, ob alle drei festlegbaren Eigenschaften enthalten sind.
404 – Nicht gefunden Der zu ersetzende Benutzer ist keine Ressource mehr, d. h. die Berechtigung wurde gelöscht.
409 – Konflikt Die für die Berechtigung angegebene ID wurde von einer vorhandenen Berechtigung übernommen. 409 wird auch zurückgegeben, wenn die neue Berechtigung bereits einer anderen Berechtigung für den Benutzer zugewiesen wurde.

Body

Eigenschaft BESCHREIBUNG
_los Es handelt sich um eine vom System generierte Eigenschaft. Die Ressourcen-ID (_rid) ist ein eindeutiger Bezeichner, der auch je nach Ressourcenstapel im Ressourcenmodell hierarchisch ist. Sie wird intern für die Platzierung und Navigation der Berechtigungsressource verwendet.
_Ts Es handelt sich um eine vom System generierte Eigenschaft. Sie gibt den zuletzt aktualisierten Zeitstempel der Ressource an. Der Wert ist ein Zeitstempel.
_Selbst Es handelt sich um eine vom System generierte Eigenschaft. Es handelt sich um den eindeutigen, adressierbaren URI für die Ressource.
_Etag Es handelt sich um eine vom System generierte Eigenschaft, die das Ressourcen-Etag darstellt, das für die Steuerung der optimistischen Parallelität erforderlich ist.
_Token Es handelt sich um ein vom System generiertes Ressourcentoken für die jeweilige Ressource und den jeweiligen Benutzer.
{  
    "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=;"  
}  
  

Beispiel

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=;"  
}  
  

Weitere Informationen