Verwalten von ACLs des Datensatzes
In diesem Artikel erfahren Sie, wie Sie ACLs aus dem Datensatz in Ihrem Azure Data Manager für Energieinstanz hinzufügen oder daraus entfernen.
Erstellen einer Datengruppe als ACL
Führen Sie den folgenden curl-Befehl in Azure Cloud Shell aus, um eine neue Datengruppe zu erstellen, z. B. data.sampledb.viewer, in der spezifischen Datenpartition des Azure Data Manager für Energieinstanz.
Anforderungsformat
curl --location --request POST "https://<adme-url>/api/entitlements/v2/groups/" \
--header 'data-partition-id: <data-partition>' \
--header 'Authorization: Bearer <access_token>'
--data-raw '{
"description": "<data-group-description>",
"name": "data.sampledb.viewer"
}
Erstellen eines Datensatzes mit ACLs
Anforderungsformat
curl --location --request PUT 'https://<adme-url>/api/storage/v2/records/' \
--header 'data-partition-id: opendes' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <token>’ \
--header 'Content-Type: application/json' \
--data-raw '[
{
"acl": {
"owners": [
"data.default.owners@opendes.contoso.com",
"data.wellbore1.owner@opendes.contoso.com"
],
"viewers": [
"data.default.viewers@opendes.contoso.com"
]
},
"data": {
"FacilityID": "Example External Facility Identifier",
"Source": "Create Record test"
},
"id": "opendes:master-data--Well:999635346360",
"kind": "osdu:wks:master-data--Well:1.0.0",
"legal": {
"legaltags": [
"opendes-Test-Legal-Tag-2311232"
],
"otherRelevantDataCountries": [
"US"
],
"status": "compliant"
},
"meta": [
{}
],
"version": 0
}
]
Beispiel für eine Antwort
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Well:999736019023"
],
"skippedRecordIds": [],
"recordIdVersions": [
"opendes:master-data--Well:999736019023:1702017200855277"
]
}
Halten Sie die Datensatz-ID aus der Antwort praktisch für zukünftige Verweise.
Erstellen eines Datensatzes mit ACLs
Anforderungsformat
curl --location 'https://<adme-url>/api/storage/v2/records/opendes:master-data--Well:999736019023' \
--header 'data-partition-id: opendes' \
--header 'Authorization: Bearer <token>’
Beispiel für eine Antwort
{
"data": {
"FacilityID": "Example External Facility Identifier",
"Source": "Create Record test"
},
"meta": [
{}
],
"id": "opendes:master-data--Well:999736019023",
"version": 1702017200855277,
"kind": "osdu:wks:master-data--Well:1.0.0",
"acl": {
"viewers": [
"data.default.viewers@opendes.contoso.com"
],
"owners": [
"data.default.owners@opendes.contoso.com",
"data.wellbore1.owner@opendes.contoso.com"
]
},
"legal": {
"legaltags": [
"opendes-Test-Legal-Tag-2311232"
],
"otherRelevantDataCountries": [
"US"
],
"status": "compliant"
},
"createUser": "preshipping@azureglobal1.onmicrosoft.com",
"createTime": "2023-12-08T06:33:21.338Z"
}
Löschen von ACLs aus dem Datensatz
Der erste /acl/owners/0
Vorgang entfernt ACL von der 0. Position im Array der ACL. Wenn Sie den ersten Eintrag mit diesem Vorgang löschen, wird er vom System gelöscht. Der vorherige zweite Eintrag wird dann zum ersten Eintrag. Der zweite /acl/owners/0
Vorgang versucht, den zweiten Eintrag zu entfernen.
Anforderungsformat
curl --location --request PATCH 'https://<adme-url>/api/storage/v2/records/' \
--header 'data-partition-id: opendes' \
--header 'Accept: application/json' \
--header 'Authorization: Bearer <token>’\
--header 'Content-Type: application/json-patch+json' \
--data '
{
"query": {
"ids": ["opendes:master-data--Well:999736019023"]
},
"ops": [
{
"op": "remove",
"path": "/acl/owners/0"
}
]
}
Beispiel für eine Antwort
{
"recordCount": 1,
"recordIds": [
"opendes:master-data--Well:999736019023:1702017200855277"
],
"notFoundRecordIds": [],
"failedRecordIds": [],
"errors": []
}
Wenn Sie den letzten Besitzer ACL aus dem Datensatz löschen, wird die Fehlermeldung angezeigt.
Beispiel für eine Antwort
{
"recordCount": 0,
"recordIds": [],
"notFoundRecordIds": [],
"failedRecordIds": [
"opendes:master-data--Well: 999736019023"
],
"errors": [
"Patch operation for record: opendes:master-data--Well:999512152273 aborted. Potentially empty value of legaltags or acl/owners or acl/viewers"
]
}
Nächste Schritte
Nachdem Sie acLs zu den Datensätzen hinzugefügt haben, können Sie:
Sie können daten auch in Ihren Azure Data Manager für Energieinstanz aufnehmen: