Az adatrekord ACL-einek kezelése

Ebből a cikkből megtudhatja, hogyan vehet fel vagy távolíthat el ACL-eket az Azure Data Manager for Energy-példány adatrekordjából.

Adatcsoport létrehozása ACL-ként

Futtassa a következő curl-parancsot az Azure Cloud Shellben egy új adatcsoport (például data.sampledb.viewer) létrehozásához az Azure Data Manager for Energy-példány adott adatpartíciójában.

Kérelem formátuma

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

Rekord létrehozása ACL-ekkel

Kérelem formátuma

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
  }
]

Mintaválasz

{
    "recordCount": 1,
    "recordIds": [
        "opendes:master-data--Well:999736019023"
    ],
    "skippedRecordIds": [],
    "recordIdVersions": [
        "opendes:master-data--Well:999736019023:1702017200855277"
    ]
}

A rekordazonosítót a jövőbeni hivatkozásokhoz hasznosnak tarthatja a válaszból.

Rekord létrehozása ACL-ekkel

Kérelem formátuma

curl --location 'https://<adme-url>/api/storage/v2/records/opendes:master-data--Well:999736019023' \
--header 'data-partition-id: opendes' \
--header 'Authorization: Bearer <token>’

Mintaválasz

{
    "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"
}

ACL-ek törlése az adatrekordból

Az első /acl/owners/0 művelet eltávolítja az ACL-t az ACL tömbjének 0. pozíciójából. Amikor törli az első bejegyzést ezzel a művelettel, a rendszer törli azt. Az előző második bejegyzés lesz az első bejegyzés. A második /acl/owners/0 művelet megpróbálja eltávolítani a második bejegyzést.

Kérelem formátuma

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"
        }
      ]
}

Mintaválasz

{
      "recordCount": 1,
      "recordIds": [
          "opendes:master-data--Well:999736019023:1702017200855277"
      ],
      "notFoundRecordIds": [],
      "failedRecordIds": [],
      "errors": []
}

Ha törli az utolsó tulajdonos ACL-t az adatrekordból, a hibaüzenet jelenik meg.

Mintaválasz

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

Következő lépések

Miután hozzáadott ACL-eket az adatrekordokhoz, a következőt teheti:

Adatokat is betölthet az Azure Data Manager for Energy-példányba: