A Durable Functions konfigurálása a Microsoft Entra-azonosítóval

A Microsoft Entra ID (Microsoft Entra ID) egy felhőalapú identitás- és hozzáférés-kezelési szolgáltatás. Az identitásalapú kapcsolatok lehetővé teszik a Durable Functions számára, hogy engedélyezett kéréseket küldjön a Microsoft Entra által védett erőforrásokra, például egy Azure Storage-fiókra anélkül, hogy manuálisan kellene kezelni a titkos kulcsokat. Az alapértelmezett Azure Storage-szolgáltató használatával a Durable Functionsnek hitelesítenie kell magát egy Azure-tárfiókon. Ebben a cikkben bemutatjuk, hogyan konfigurálhat egy Durable Functions-alkalmazást kétféle identitásalapú kapcsolat használatára: felügyelt identitások hitelesítő adatai és titkos ügyfélkód hitelesítő adatai.

A felügyelt identitás lehetővé teszi, hogy az alkalmazás könnyen hozzáférjen más, Microsoft Entra által védett erőforrásokhoz, például az Azure Key Vaulthoz. A felügyelt identitás a Durable Functions 2.7.0-s és újabb verzióiban támogatott.

Megjegyzés:

Szigorúan véve a felügyelt identitás csak az alkalmazások számára érhető el az Azure-ban való végrehajtáskor. Ha identitásalapú kapcsolatok használatára van konfigurálva, egy helyileg végrehajtó alkalmazás a fejlesztői hitelesítő adatokat fogja használni az Azure-erőforrások hitelesítéséhez. Ezután az Azure-ban történő üzembe helyezéskor a felügyelt identitáskonfigurációt fogja használni.

Előfeltételek

Az alábbi lépések feltételezik, hogy egy meglévő Durable Functions-alkalmazással kezdi, és ismeri annak működését. Ez a rövid útmutató különösen azt feltételezi, hogy már rendelkezik a következőkkel:

  • Létrehozott egy Durable Functions-projektet az Azure Portalon, vagy üzembe helyezett egy helyi Durable Functions-függvényt az Azure-ban.

Ha nem ez a helyzet, javasoljuk, hogy kezdje az alábbi cikkek egyikével, amely részletes útmutatást nyújt a fenti követelmények teljesítéséhez:

Felügyelt identitás engedélyezése

A függvényhez csak egy identitásra van szükség, vagy egy rendszer által hozzárendelt felügyelt identitásra vagy egy felhasználó által hozzárendelt felügyelt identitásra. Ha engedélyezni szeretné a felügyelt identitást a függvényhez, és többet szeretne megtudni a két identitás közötti különbségekről, olvassa el itt a részletes utasításokat.

Szerepköralapú hozzáférés-vezérlők (RBAC) hozzárendelése felügyelt identitáshoz

Keresse meg az alkalmazás tárolási erőforrását az Azure Portalon. Az alábbi utasításokat követve rendelje hozzá a következő szerepköröket a felügyelt identitás erőforrásához.

  • Tárolási várólista adatszolgáltatója
  • Storage Blob Data Contributor
  • Storage Table Data Contributor

Felügyelt identitáskonfiguráció hozzáadása az Azure Portalon

Lépjen az Azure-függvényalkalmazás konfigurációs oldalára, és hajtsa végre a következő módosításokat:

  1. Távolítsa el az alapértelmezett "AzureWebJobsStorage" értéket.

Screenshot of default storage setting.

  1. Az Azure Storage-fiók összekapcsolása az alábbi értékbeállítások egyikének hozzáadásával:

    • AzureWebJobsStorage__accountName: Például:mystorageaccount123

    • AzureWebJobsStorage__blobServiceUri: Példa:https://mystorageaccount123.blob.core.windows.net/

      AzureWebJobsStorage__queueServiceUri: Példa:https://mystorageaccount123.queue.core.windows.net/

      AzureWebJobsStorage__tableServiceUri: Példa:https://mystorageaccount123.table.core.windows.net/

      Megjegyzés:

      Ha az Azure Governmentt vagy bármely más, a globális Azure-tól független felhőt használ, akkor ezt a második lehetőséget kell használnia az adott szolgáltatás URL-címeinek megadásához. Ezeknek a beállításoknak az értékei a Végpontok lap tárfiókjában találhatók. Az Azure Storage és az Azure Government használatával kapcsolatos további információkért tekintse meg a Fejlesztés a Storage API-val az Azure Government dokumentációjában.

    Screenshot of endpoint sample.

  2. A felügyelt identitás konfigurációjának véglegesítése:

    • Ha rendszer által hozzárendelt identitást szeretne használni, akkor semmi mást ne adjon meg.

    • Ha felhasználó által hozzárendelt identitást szeretne használni, adja hozzá a következő alkalmazásbeállításokat az alkalmazáskonfigurációhoz:

      • AzureWebJobsStorage__credential: felügyeltség

      • AzureWebJobsStorage__clientId: (Ez a Microsoft Entra felügyeleti központból beszerzett GUID-érték)

      Screenshot of user identity client id.

Az alkalmazás konfigurálása az ügyfél titkos hitelesítő adatainak használatára

Egy ügyfélalkalmazás regisztrálása a Microsoft Entra-azonosítóban egy másik módszer az Azure-szolgáltatásokhoz való hozzáférés konfigurálására. Az alábbi lépésekben megtudhatja, hogyan használhatja az ügyfél titkos hitelesítő adatait az Azure Storage-fiók hitelesítéséhez. Ezt a módszert a függvényalkalmazások helyileg és az Azure-ban is használhatják. Az ügyfél titkos hitelesítő adatai azonban kevésbé ajánlottak , mint a felügyelt identitások, mivel bonyolultabb konfigurálni és kezelni, és titkos hitelesítő adatokat kell megosztani az Azure Functions szolgáltatással.

Előfeltételek

Az alábbi lépések feltételezik, hogy egy meglévő Durable Functions-alkalmazással kezdi, és ismeri annak működését. Ez a rövid útmutató különösen azt feltételezi, hogy már rendelkezik a következőkkel:

  • Létrehozott egy Durable Functions-projektet a helyi gépen vagy az Azure Portalon.

Ügyfélalkalmazás regisztrálása a Microsoft Entra-azonosítón

  1. Regisztráljon egy ügyfélalkalmazást a Microsoft Entra ID alatt az Azure Portalon az alábbi utasításoknak megfelelően.

  2. Hozzon létre egy ügyfélkulcsot az ügyfélalkalmazáshoz. A regisztrált alkalmazásban:

    1. Válassza a Tanúsítványok és titkos kódok lehetőséget, majd az Új ügyfélkulcs lehetőséget.

    2. Töltse ki a Leírást, és válassza ki a titkos kulcs érvényes idejét a Lejárat mezőben.

    3. Másolja és mentse gondosan a titkos kód értékét, mert az nem jelenik meg újra a lap elhagyása után.

    Screenshot of client secret page.

Szerepköralapú hozzáférés-vezérlők (RBAC) hozzárendelése az ügyfélalkalmazáshoz

Rendelje hozzá ezt a három szerepkört az ügyfélalkalmazáshoz az alábbi lépésekkel.

  • Tárolási várólista adatszolgáltatója
  • Storage Blob Data Contributor
  • Storage Table Data Contributor
  1. Lépjen a függvény tárfiók hozzáférés-vezérlési (IAM) lapjára, és adjon hozzá egy új szerepkör-hozzárendelést.

    Screenshot of access control page.

  2. Válassza ki a szükséges szerepkört, kattintson a tovább gombra, majd keresse meg az alkalmazást, tekintse át és adja hozzá.

    Screenshot of role assignment page.

Ügyfél titkos kódjának konfigurációjának hozzáadása

Az Azure-ban való futtatáshoz és teszteléshez adja meg az alábbiakat az Azure-függvényalkalmazás Konfiguráció lapján az Azure Portalon. A helyi futtatáshoz és teszteléshez adja meg a következőket a függvény local.settings.json fájljában.

  1. Távolítsa el az alapértelmezett "AzureWebJobsStorage" értéket.

  2. Az Azure Storage-fiók összekapcsolása az alábbi értékbeállítások egyikének hozzáadásával:

    • AzureWebJobsStorage__accountName: Például:mystorageaccount123

    • AzureWebJobsStorage__blobServiceUri: Példa:https://mystorageaccount123.blob.core.windows.net/

      AzureWebJobsStorage__queueServiceUri: Példa:https://mystorageaccount123.queue.core.windows.net/

      AzureWebJobsStorage__tableServiceUri: Példa:https://mystorageaccount123.table.core.windows.net/

    Ezeknek az Uri-változóknak az értékei a Végpontok lap tárfiókjában találhatók.

    Screenshot of endpoint sample.

  3. Adja hozzá az ügyfél titkos hitelesítő adatait a következő értékek megadásával:

    • AzureWebJobsStorage__clientId: (ez a Microsoft Entra alkalmazásoldalán található GUID-érték)

    • AzureWebJobsStorage__ClientSecret: (ez a Microsoft Entra felügyeleti központban egy előző lépésben létrehozott titkos kódérték)

    • AzureWebJobsStorage__tenantId: (ez az a bérlőazonosító, amelyben a Microsoft Entra alkalmazás regisztrálva van)

    Az ügyfél-azonosító és a bérlőazonosító értékei az ügyfélalkalmazás áttekintő oldalán találhatók. Az ügyfél titkos kódjának értéke az, amelyet az előző lépésben gondosan mentettek. A lap frissítése után nem lesz elérhető.

    Screenshot of application's overview page.