Felügyelt identitás használata az Azure Data Manager for Energy eléréséhez más Azure-szolgáltatásokból

Ez a cikk azt ismerteti, hogyan érheti el az Azure Data Manager for Energy adatsíkját vagy vezérlősíkját más Microsoft Azure-szolgáltatásokból felügyelt identitás használatával.

Szükség van olyan szolgáltatásokra, mint az Azure Functions, hogy képesek legyenek az Azure Data Manager for Energy API-k használatára. Ez az együttműködés lehetővé teszi, hogy több Azure-szolgáltatás legjobb képességeit használja.

Írhat például egy szkriptet az Azure Functionsben az adatok betöltéséhez az Azure Data Manager for Energy szolgáltatásban. Ebben a forgatókönyvben azt kell feltételeznie, hogy az Azure Functions a forrásszolgáltatás, az Azure Data Manager for Energy pedig a célszolgáltatás.

Ez a cikk végigvezeti az Azure Functionsnek az Azure Data Manager for Energy elérésére való konfigurálásának öt fő lépésén.

Felügyelt identitások áttekintése

A Microsoft Entra-azonosítóból származó felügyelt identitás lehetővé teszi az alkalmazás számára, hogy könnyen hozzáférjen más Microsoft Entra által védett erőforrásokhoz. Az identitást az Azure platform kezeli, és nem követeli meg, hogy titkos kulcsokat hozzon létre vagy forgassa el. Minden Olyan Azure-szolgáltatás, amely bármilyen művelethez hozzá szeretne férni az Azure Data Manager energiavezérlő síkhoz vagy adatsíkhoz, használhat felügyelt identitást.

A felügyelt identitásoknak két típusa létezik:

  • A rendszer által hozzárendelt felügyelt identitások életciklusa az őket létrehozó erőforráshoz van kötve.
  • A felhasználó által hozzárendelt felügyelt identitások több erőforráson is használhatók.

A felügyelt identitásokról további információt az Azure-erőforrások felügyelt identitásai című témakörben talál.

Jelenleg más szolgáltatások is csatlakozhatnak az Azure Data Manager for Energy szolgáltatáshoz egy rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitás használatával. Az Azure Data Manager for Energy azonban nem támogatja a rendszer által hozzárendelt felügyelt identitásokat.

Ebben a cikkben szereplő forgatókönyvben egy felhasználó által hozzárendelt felügyelt identitást fog használni az Azure Functionsben egy adatsík API meghívásához az Azure Data Manager for Energy-ben.

Előfeltételek

A kezdés előtt hozza létre a következő erőforrásokat:

1. lépés: Az objektumazonosító lekérése

A felhasználó által hozzárendelt identitás objektumazonosítójának lekérése, amely hozzáfér az Azure Data Manager for Energy API-khoz:

  1. Jelentkezzen be az Azure Portalra.
  2. Lépjen a felügyelt identitásra, és válassza az Áttekintés lehetőséget.
  3. Az Essentials alatt jegyezze fel az Objektum (egyszerű) azonosító értékét.

Screenshot of the object ID for a user-assigned identity.

2. lépés: Az alkalmazásazonosító lekérése

A felhasználó által hozzárendelt identitás alkalmazásazonosítójának lekérése az objektumazonosító használatával:

  1. Az Azure Portalon nyissa meg a Microsoft Entra-azonosítót.
  2. A bal oldali menüben válassza a Vállalati alkalmazások lehetőséget.
  3. A Keresés alkalmazásnév vagy objektumazonosító alapján mezőbe írja be az objektumazonosítót.
  4. Az eredményekben megjelenő alkalmazás esetében jegyezze fel az alkalmazásazonosító értékét.

Screenshot of the application ID for a user-assigned identity.

3. lépés: A felhasználó által hozzárendelt felügyelt identitás hozzáadása az Azure Functionshez

  1. Az Azure Portalon nyissa meg az Azure-függvényt.
  2. A Fiókbeállítások területen válassza az Identitás lehetőséget.
  3. Válassza a Felhasználó által hozzárendelt lapot, majd válassza a Hozzáadás lehetőséget.
  4. Válassza ki a meglévő felhasználó által hozzárendelt felügyelt identitást, majd válassza a Hozzáadás lehetőséget. Ezután visszakerül a Felhasználó által hozzárendelt lapra.

Screenshot of a newly added user-assigned identity to an Azure function.

4. lépés: Az alkalmazásazonosító hozzáadása jogosultsági csoportokhoz

Ezután adja hozzá az alkalmazásazonosítót a megfelelő csoportokhoz, amelyek a jogosultsági szolgáltatást fogják használni az Azure Data Manager for Energy API-k eléréséhez. Az alábbi példa két csoporthoz adja hozzá az alkalmazásazonosítót:

  • users@[partícióazonosító].dataservices.energy
  • users.datalake.editors@[partícióazonosító].dataservices.energy

Az alkalmazásazonosító hozzáadása:

  1. Gyűjtse be a következő adatokat:

    • Bérlőazonosító
    • Ügyfél azonosítója
    • Titkos ügyfélkód
    • Azure Data Manager for Energy URI
    • Adatpartíció azonosítója
    • Hozzáférési jogkivonat
    • A felügyelt identitás alkalmazásazonosítója
  2. A Tag hozzáadása API használatával adja hozzá a felhasználó által hozzárendelt felügyelt identitás alkalmazásazonosítóját a megfelelő jogosultsági csoportokhoz.

    Megjegyzés:

    Az alábbi parancsokban ne az objektumazonosítót, hanem a felügyelt identitás alkalmazásazonosítóját használja.

    1. Ha hozzá szeretné adni az alkalmazásazonosítót a users@[partícióazonosító].dataservices.energy csoporthoz, futtassa a következő cURL-parancsot az Azure-beli Bashen keresztül:

       curl --location --request POST 'https://<Azure Data Manager for Energy URI>/api/entitlements/v2/groups/users@ <data-partition-id>.dataservices.energy/members' \
          --header 'data-partition-id: <data-partition-id>' \
          --header 'Authorization: Bearer \
          --header 'Content-Type: application/json' \
          --data-raw '{
                          "email": "<application ID of the managed identity>",
                          "role": "MEMBER"
                      }'
      

      Íme egy mintaválasz:

      {
          "email": "<application ID of the managed identity>",
          "role": "MEMBER"
          }
      
    2. Ha hozzá szeretné adni az alkalmazásazonosítót a users.datalake.editors@[partícióazonosító].dataservices.energy csoporthoz, futtassa a következő cURL-parancsot az Azure-beli Bashen keresztül:

       curl --location --request POST 'https://<Azure Data Manager for Energy URI>/api/entitlements/v2/groups/ users.datalake.editors@ <data-partition-id>.dataservices.energy/members' \
          --header 'data-partition-id: <data-partition-id>' \
          --header 'Authorization: Bearer \
          --header 'Content-Type: application/json' \
          --data-raw '{
                          "email": "<application ID of the managed identity>",
                          "role": "MEMBER"
                      }'
      

      Íme egy mintaválasz:

      {
          "email": "<application ID of the managed identity>",
          "role": "MEMBER"
          }
      

5. lépés: Jogkivonat létrehozása

Az Azure Functions most már készen áll az Azure Data Manager for Energy API-k elérésére.

Az Azure-függvény a felhasználó által hozzárendelt identitással hoz létre jogkivonatot. A függvény az Azure Data Manager for Energy-példányban található alkalmazásazonosítót használja a jogkivonat létrehozásakor.

Íme egy példa az Azure-függvénykódra:

import logging
import requests
import azure.functions as func
from msrestazure.azure_active_directory import MSIAuthentication

def main(req: func.HttpRequest) -> str:
    logging.info('Python HTTP trigger function processed a request.')

    //To authenticate by using a managed identity, you need to pass the Azure Data Manager for Energy application ID as the resource.     
    //To use a user-assigned identity, you should include the   
    //client ID as an additional parameter.
    //Managed identity using user-assigned identity: MSIAuthentication(client_id, resource)

    creds = MSIAuthentication(client_id="<client_id_of_managed_identity>”, resource="<meds_app_id>")
    url = "https://<meds-uri>/api/entitlements/v2/groups"
    payload = {}
    // Passing the data partition ID of Azure Data Manager for Energy in headers along with the token received using the managed instance.
    headers = {
        'data-partition-id': '<data partition id>',
        'Authorization': 'Bearer ' + creds.token["access_token"]
    }
    response = requests.request("GET", url, headers=headers, data=payload, verify=False)
    return response.text

A következő sikeres választ kell kapnia az Azure Functionstől:

Screenshot of a success message from Azure Functions.

Az előző lépések végrehajtásával mostantól az Azure Functions használatával is hozzáférhet az Azure Data Manager for Energy API-khoz a felügyelt identitások megfelelő használatával.

Következő lépések

Tudnivalók a Lockboxról: