Azure Functions – fejlesztői útmutató

Az Azure Functionsben minden függvény alapvető technikai fogalmakat és összetevőket oszt meg, függetlenül az előnyben részesített nyelvtől vagy fejlesztési környezettől. Ez a cikk nyelvspecifikus. Válassza ki a kívánt nyelvet a cikk tetején.

Ez a cikk feltételezi, hogy már elolvasta az Azure Functions áttekintését.

Ha inkább közvetlenül be szeretne ugrani, elvégezhet egy rövid útmutatót a Visual Studio, a Visual Studio Code vagy a parancssor használatával.

Ha inkább rögtön be szeretne ugrani, elvégezhet egy rövid útmutatót a Maven (parancssor), az Eclipse, az IntelliJ IDEA, a Gradle, a Quarkus, a Spring Cloud vagy a Visual Studio Code használatával.

Ha inkább rögtön be szeretne ugrani, a Visual Studio Code használatával vagy a parancssorból is elvégezhet egy rövid útmutatót.

Ha inkább rögtön be szeretne ugrani, a Visual Studio Code használatával vagy a parancssorból is elvégezhet egy rövid útmutatót.

Ha inkább rögtön be szeretne ugrani, a Visual Studio Code használatával vagy a parancssorból is elvégezhet egy rövid útmutatót.

Ha inkább rögtön be szeretne ugrani, a Visual Studio Code használatával vagy a parancssorból is elvégezhet egy rövid útmutatót.

Kódprojekt

Az Azure Functions lényege egy nyelvspecifikus kódprojekt, amely egy vagy több függvénynek nevezett kódvégrehajtási egységet implementál. A függvények egyszerűen olyan metódusok, amelyek események, HTTP-kérések vagy ütemezés alapján futnak az Azure-felhőben. Az Azure Functions-kódprojektet úgy tekintheti, mint egy mechanizmust az egyes függvények rendszerezésére, üzembe helyezésére és közös kezelésére a projektben, amikor azok az Azure-ban futnak. További információ: Függvények rendszerezése.

A kódprojekt elrendezése és a projektben szereplő metódusok megjelölésének módja a projekt fejlesztési nyelvétől függ. A nyelvspecifikus részletes útmutatásért tekintse meg a C# fejlesztői útmutatóját.

A kódprojekt elrendezése és a projektben szereplő metódusok megjelölésének módja a projekt fejlesztési nyelvétől függ. A nyelvspecifikus útmutatásért tekintse meg a Java fejlesztői útmutatóját.

A kódprojekt elrendezése és a projektben szereplő metódusok megjelölésének módja a projekt fejlesztési nyelvétől függ. A nyelvspecifikus útmutatásért tekintse meg a Node.js fejlesztői útmutatóját.

A kódprojekt elrendezése és a projektben szereplő metódusok megjelölésének módja a projekt fejlesztési nyelvétől függ. Nyelvspecifikus útmutatásért tekintse meg a PowerShell fejlesztői útmutatóját.

A kódprojekt elrendezése és a projektben szereplő metódusok megjelölésének módja a projekt fejlesztési nyelvétől függ. Nyelvspecifikus útmutatásért tekintse meg a Python fejlesztői útmutatóját.

Minden függvénynek rendelkeznie kell egy eseményindítóval, amely meghatározza a függvény indításának módját, és képes bemenetet adni a függvénynek. A függvények opcionálisan definiálhatnak bemeneti és kimeneti kötéseket. Ezek a kötések egyszerűsítik a más szolgáltatásokhoz való kapcsolódást anélkül, hogy ügyféloldali SDK-kkal kellene dolgozniuk. További információkat az Azure Functions triggers and bindings concepts (Az Azure Functions eseményindítói és kötési alapelvei) témakörben talál.

Az Azure Functions nyelvspecifikus projekt- és függvénysablonokat biztosít, amelyek megkönnyítik új kódprojektek létrehozását és függvények hozzáadását a projekthez. Az Azure Functions fejlesztését támogató eszközök bármelyikével új alkalmazásokat és függvényeket hozhat létre ezekkel a sablonokkal.

Fejlesztési eszközök

Az alábbi eszközök integrált fejlesztési és közzétételi élményt nyújtanak az Azure Functions számára az Ön által előnyben részesített nyelven:

Ezek az eszközök integrálhatók az Azure Functions Core Toolsszal, így a helyi számítógépen futtathatók és hibakeresést végezhetnek a Functions-futtatókörnyezettel. További információkért lásd az Azure Functions helyi kódját és tesztelését.

Az Azure Portalon egy szerkesztő is található, amellyel közvetlenül a portálon frissítheti a kódot és a function.json definíciós fájlt. Ezt a szerkesztőt csak kis módosításokhoz vagy megvalósíthatósági igazolási függvényekhez érdemes használni. Ha lehetséges, mindig helyben kell fejlesztenie a függvényeket. További információ: Az első függvény létrehozása az Azure Portalon.

A portálszerkesztés csak a Node.js 3-ás verziójában támogatott, amely a function.json fájlt használja.

A portálszerkesztés csak a Python 1-es verziójában támogatott, amely a function.json fájlt használja.

Üzembe helyezés

Amikor közzéteszi a kódprojektet az Azure-ban, lényegében üzembe helyezi a projektet egy meglévő függvényalkalmazás-erőforrásban. A függvényalkalmazások végrehajtási környezetet biztosítanak az Azure-ban, amelyben a függvények futnak. Ezért ez a függvények üzembe helyezésének és felügyeletének egysége. Az Azure-erőforrások szempontjából a függvényalkalmazások egyenértékűek a Azure-alkalmazás Service-ben található helyerőforrással (Microsoft.Web/sites), amely egy webalkalmazással egyenértékű.

A függvényalkalmazások egy vagy több különálló függvényből állnak, amelyek kezelése, üzembe helyezése és skálázása együtt történik. A függvényalkalmazások összes függvénye ugyanazt a tarifacsomagot, üzembe helyezési módszert és futtatókörnyezeti verziót használja. További információ: Függvényalkalmazások kezelése.

Ha a függvényalkalmazás és a többi szükséges erőforrás még nem létezik az Azure-ban, először létre kell hoznia ezeket az erőforrásokat, mielőtt üzembe helyezheti a projektfájlokat. Ezeket az erőforrásokat az alábbi módokon hozhatja létre:

Az eszközalapú közzététel mellett a Functions más technológiákat is támogat a forráskód meglévő függvényalkalmazásban való üzembe helyezéséhez. További információ: Üzembehelyezési technológiák az Azure Functionsben.

Kapcsolódás szolgáltatásokhoz

A felhőalapú számítási szolgáltatások egyik fő követelménye az adatok olvasása és más felhőszolgáltatásokba való írása. A Functions számos kötést biztosít, amelyek megkönnyítik a szolgáltatásokhoz való csatlakozást anélkül, hogy ügyféloldali SDK-kkal kellene dolgoznia.

Akár a Functions által biztosított kötésbővítményeket használja, akár közvetlenül az ügyféloldali SDK-kkal dolgozik, biztonságosan tárolja a kapcsolati adatokat, és nem foglalja bele azokat a kódba. További információ: Csatlakozás.

Kötések

A Functions számos Azure-szolgáltatáshoz és néhány külső szolgáltatáshoz biztosít kötéseket, amelyek bővítményként vannak implementálva. További információkért tekintse meg a támogatott kötések teljes listáját.

A kötésbővítmények támogatják a bemeneteket és a kimeneteket is, és számos eseményindító bemeneti kötésként is működik. A kötések lehetővé teszik a szolgáltatásokhoz való csatlakozás konfigurálását, hogy a Functions-gazdagép kezelje az Ön számára az adathozzáférést. További információkat az Azure Functions triggers and bindings concepts (Az Azure Functions eseményindítói és kötési alapelvei) témakörben talál.

Ha problémákat tapasztal a kötésekből eredő hibákkal kapcsolatban, tekintse meg az Azure Functions kötési hibakódjainak dokumentációját .

Ügyfél-SDK-k

Bár a Functions kötéseket biztosít a függvénykód adathozzáférésének egyszerűsítéséhez, a projektben lévő ügyféloldali SDK-val továbbra is közvetlenül hozzáférhet egy adott szolgáltatáshoz, ha szeretné. Előfordulhat, hogy közvetlenül ügyféloldali SDK-kat kell használnia, ha a függvényekhez a mögöttes SDK olyan funkciója szükséges, amelyet a kötésbővítmény nem támogat.

Ügyféloldali SDK-k használatakor ugyanazt a folyamatot kell használnia a kötésbővítmények által használt kapcsolati sztring tárolásához és eléréséhez.

Amikor létrehoz egy ügyfél SDK-példányt a függvényekben, le kell kapnia az ügyfél által igényelt kapcsolati adatokat a környezeti változókból.

Amikor létrehoz egy ügyfél SDK-példányt a függvényekben, le kell kapnia az ügyfél által igényelt kapcsolati adatokat a környezeti változókból.

Amikor létrehoz egy ügyfél SDK-példányt a függvényekben, le kell kapnia az ügyfél által igényelt kapcsolati adatokat a környezeti változókból.

Amikor létrehoz egy ügyfél SDK-példányt a függvényekben, le kell kapnia az ügyfél által igényelt kapcsolati adatokat a környezeti változókból.

Amikor létrehoz egy ügyfél SDK-példányt a függvényekben, le kell kapnia az ügyfél által igényelt kapcsolati adatokat a környezeti változókból.

Kapcsolatok

Biztonsági szempontból ajánlott eljárásként az Azure Functions kihasználja a Azure-alkalmazás Szolgáltatás alkalmazásbeállítási funkcióit, hogy biztonságosabban tárolhassa a más szolgáltatásokhoz való csatlakozáshoz szükséges sztringeket, kulcsokat és egyéb jogkivonatokat. Az Azure-ban az alkalmazásbeállítások titkosítva vannak tárolva, és az alkalmazás futásidőben, környezeti változópárokként namevalue érhető el. Kapcsolati tulajdonságot igénylő eseményindítók és kötések esetén az alkalmazásbeállítás nevét kell megadnia a tényleges kapcsolati sztring helyett. Közvetlenül kapcsolati sztring vagy kulccsal nem konfigurálhat kötést.

Vegyük például egy tulajdonságot tartalmazó triggerdefiníciót connection . A kapcsolati sztring helyett a kapcsolati sztring tartalmazó környezeti változó nevét kell megadniaconnection. A titkos kódok hozzáférési stratégiájának használatával az alkalmazások biztonságosabbak, és megkönnyítik a környezetek közötti kapcsolatok módosítását. A még nagyobb biztonság érdekében identitásalapú kapcsolatokat is használhat.

Az alapértelmezett konfigurációszolgáltató környezeti változókat használ. Ezeket a változókat az alkalmazásbeállítások határozzák meg, amikor az Azure-ban és a helyi beállításfájlban futnak helyi fejlesztéskor.

Csatlakozás ion értékek

Amikor a kapcsolat neve egyetlen pontos értékre oldódik fel, a futtatókörnyezet az értéket kapcsolati sztring azonosítja, amely általában egy titkos kulcsot tartalmaz. A kapcsolati sztring részletei attól függenek, hogy melyik szolgáltatáshoz csatlakozik.

A kapcsolatnevek azonban több konfigurációelem gyűjteményére is hivatkozhatnak, amelyek az identitásalapú kapcsolatok konfigurálásához hasznosak. A környezeti változók gyűjteményként kezelhetők dupla aláhúzásjelekkel __végződő megosztott előtaggal. A csoportra ezután hivatkozhat úgy, hogy a kapcsolat nevét erre az előtagra állítja.

Előfordulhat például, hogy egy connection Azure Blob-eseményindító definíciójának tulajdonsága .Storage1 Mindaddig, amíg egy névvel ellátott Storage1környezeti változó nem konfigurál egyetlen sztringértéket, egy elnevezett Storage1__blobServiceUri környezeti változóval tájékoztathatja a blobServiceUri kapcsolat tulajdonságát. A kapcsolat tulajdonságai minden szolgáltatás esetében eltérőek. Tekintse meg a kapcsolatot használó összetevő dokumentációját.

Megjegyzés:

Ha Azure-alkalmazás konfigurációt vagy Key Vaultot használ a felügyelt identitáskapcsolatok beállításainak megadásához, a beállítások neveinek egy érvényes kulcselválasztót kell használniuk, például : a __ helyett, / hogy a nevek megfelelően legyenek feloldva.

Például: Storage1:blobServiceUri.

Identitásalapú kapcsolat konfigurálása

Az Azure Functions egyes kapcsolatai úgy konfigurálhatók, hogy titkos kulcs helyett identitást használjanak. A támogatás a kapcsolatot használó bővítménytől függ. Bizonyos esetekben előfordulhat, hogy a Függvényekben továbbra is szükség van egy kapcsolati sztring, annak ellenére, hogy a szolgáltatás, amelyhez csatlakozik, támogatja az identitásalapú kapcsolatokat. A függvényalkalmazások felügyelt identitásokkal való konfigurálásáról szóló oktatóanyagot az identitásalapú kapcsolatokkal rendelkező függvényalkalmazások létrehozásáról szóló oktatóanyagban tekintheti meg.

Megjegyzés:

Ha használatalapú vagy rugalmas prémium csomagban fut, az alkalmazás a WEBSITE_AZUREFILESCONNECTIONSTRING függvényalkalmazás által használt tárfiókon az Azure Fileshoz való csatlakozáskor használja a beállításokat és WEBSITE_CONTENTSHARE a beállításokat. Az Azure Files nem támogatja a felügyelt identitás használatát a fájlmegosztás elérésekor. További információ: Az Azure Files által támogatott hitelesítési forgatókönyvek

Az alábbi összetevők támogatják az identitásalapú kapcsolatokat:

Csatlakozás ion-forrás Támogatott csomagok További tudnivalók
Azure Blobs-eseményindítók és kötések Összes Azure Blobs-bővítmény 5.0.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure Queues-eseményindítók és kötések Összes Azure Queues-bővítmény 5.0.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure-táblák (az Azure Storage használatakor) Összes Az Azure Tables 1.0.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure SQL Database Összes függvényalkalmazás Csatlakozás az Azure SQL-be felügyelt identitással és SQL-kötésekkel
Az Azure Event Hubs eseményindítói és kötései Összes Azure Event Hubs-bővítmény 5.0.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure Service Bus-eseményindítók és kötések Összes Azure Service Bus-bővítmény 5.0.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure Event Grid kimeneti kötés Összes Azure Event Grid-bővítmény 3.3.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Azure Cosmos DB-eseményindítók és kötések Összes Azure Cosmos DB-bővítmény 4.0.0-s vagy újabb verziója,
4.0.2-s vagy újabb bővítménycsomag
Azure SignalR-eseményindítók és kötések Összes Azure SignalR-bővítmény 1.7.0-s vagy újabb verziója
Bővítménycsomag 3.6.1 vagy újabb
Durable Functions storage provider (Azure Storage) Összes A Durable Functions 2.7.0-s vagy újabb verziója,
3.3.0-s vagy újabb bővítménycsomag
Gazdagéphez szükséges tároló ("AzureWebJobsStorage") Összes Csatlakozás gazdagépre identitással

Az Azure Functions szolgáltatásban üzemeltetett identitásalapú kapcsolatok felügyelt identitást használnak. A rendszer alapértelmezés szerint a rendszer által hozzárendelt identitást használja, bár a felhasználó által hozzárendelt identitás megadható a credential tulajdonságokkal együtt clientID . Vegye figyelembe, hogy a felhasználó által hozzárendelt identitás erőforrás-azonosítóval való konfigurálása nem támogatott. Ha más környezetekben, például helyi fejlesztésben fut, a rendszer ehelyett a fejlesztői identitást használja, bár ez testre szabható. Lásd: Helyi fejlesztés identitásalapú kapcsolatokkal.

Engedély megadása az identitáshoz

Bármilyen identitást is használ, rendelkeznie kell a kívánt műveletek végrehajtásához szükséges engedélyekkel. A legtöbb Azure-szolgáltatás esetében ez azt jelenti, hogy egy szerepkört kell hozzárendelnie az Azure RBAC-ben beépített vagy egyéni szerepkörökkel, amelyek biztosítják ezeket az engedélyeket.

Fontos

A célszolgáltatás bizonyos engedélyeket közzétehet, amelyek nem minden környezethez szükségesek. Ahol lehetséges, tartsa be a minimális jogosultság elvét, és csak az identitáshoz szükséges jogosultságokat adja meg. Ha például az alkalmazásnak csak adatforrásból kell olvasnia, használjon olyan szerepkört, amely csak olvasási engedéllyel rendelkezik. Nem lenne helyénvaló olyan szerepkört hozzárendelni, amely lehetővé teszi az írást is a szolgáltatáshoz, mivel ez túlzott engedély lenne egy olvasási művelethez. Hasonlóképpen meg szeretné győződni arról, hogy a szerepkör-hozzárendelés csak az elolvasandó erőforrásokra terjed ki.

Az egyes összetevők engedélyeinek megismeréséhez válassza az alábbi lapok egyikét:

Létre kell hoznia egy szerepkör-hozzárendelést, amely futásidőben hozzáférést biztosít a blobtárolóhoz. A tulajdonoshoz hasonló felügyeleti szerepkörök nem elegendőek. Az alábbi táblázat olyan beépített szerepköröket mutat be, amelyek a Blob Storage-bővítmény normál működésben való használatakor ajánlottak. Előfordulhat, hogy az alkalmazás további engedélyeket igényel az Ön által írt kód alapján.

Kötés típusa Példa beépített szerepkörökre
Eseményindító Storage Blob Data OwnerandStorage Queue Data Contributor1

További engedélyeket is meg kell adni az AzureWebJobsStorage-kapcsolatnak.2
Bemeneti kötés Storage-blobadatok olvasója
Kimeneti kötés Storage-blobadatok tulajdonosa

1 A blob-eseményindító több újrapróbálkozás során is kezeli a hibákat, ha méregblobokat ír a kapcsolat által megadott tárfiók egyik üzenetsorába.

2 Az AzureWebJobsStorage kapcsolat belsőleg használatos az eseményindítót engedélyező blobokhoz és üzenetsorokhoz. Ha identitásalapú kapcsolat használatára van konfigurálva, az alapértelmezett követelményen túl további engedélyekre van szüksége. A szükséges engedélyekre a Storage Blob Data Owner, a Storage Queue Data Közreműködő és a Tárfiók közreműködői szerepkörei vonatkoznak. További információ: Csatlakozás tárolók identitással való üzemeltetéséhez.

Identitásalapú kapcsolatok gyakori tulajdonságai

Az Azure-szolgáltatások identitásalapú kapcsolatai a következő gyakori tulajdonságokat fogadják el, ahol <CONNECTION_NAME_PREFIX> a tulajdonság értéke connection szerepel az eseményindító vagy a kötés definíciójában:

Tulajdonság Környezeti változó sablonja Leírás
Token hitelesítő adatai <CONNECTION_NAME_PREFIX>__credential Meghatározza, hogyan kell jogkivonatot beszerezni a kapcsolathoz. Ezt a beállítást akkor kell beállítani, managedidentity ha az üzembe helyezett Azure-függvény felügyelt identitáshitelesítést kíván használni. Ez az érték csak akkor érvényes, ha egy felügyelt identitás elérhető az üzemeltetési környezetben.
Ügyfél azonosítója <CONNECTION_NAME_PREFIX>__clientId Ha credential be van állítva managedidentity, ez a tulajdonság megadható a jogkivonat beszerzésekor használandó felhasználó által hozzárendelt identitás megadására. A tulajdonság elfogadja az alkalmazáshoz hozzárendelt, felhasználó által hozzárendelt identitásnak megfelelő ügyfél-azonosítót. Az erőforrás-azonosító és az ügyfél-azonosító megadása érvénytelen. Ha nincs megadva, a rendszer a rendszer által hozzárendelt identitást használja. Ezt a tulajdonságot eltérően használják a helyi fejlesztési forgatókönyvekben, amikor credential nem szabad beállítani.
Erőforrás-azonosító <CONNECTION_NAME_PREFIX>__managedIdentityResourceId Ha credential be van állítva managedidentity, ez a tulajdonság megadható a jogkivonat beszerzésekor használandó erőforrás-azonosító megadásához. A tulajdonság a felhasználó által definiált felügyelt identitás erőforrás-azonosítójának megfelelő erőforrás-azonosítót fogad el. Érvénytelen az erőforrás-azonosító és az ügyfél-azonosító megadása. Ha egyik sincs megadva, a rendszer a rendszer által hozzárendelt identitást használja. Ezt a tulajdonságot eltérően használják a helyi fejlesztési forgatókönyvekben, amikor credential nem szabad beállítani.

Egy adott kapcsolattípus esetében más lehetőségek is támogatottak lehetnek. Tekintse meg a kapcsolatot létesítő összetevő dokumentációját.

Helyi fejlesztés identitásalapú kapcsolatokkal

Megjegyzés:

Az identitásalapú kapcsolatok helyi fejlesztéséhez az Azure Functions Core Tools vagy 4.0.3904egy újabb verzió szükséges.

Amikor helyileg futtatja a függvényprojektet, a fenti konfiguráció arra utasítja a futtatókörnyezetet, hogy használja a helyi fejlesztői identitást. A kapcsolat a következő helyekről próbál jogkivonatot lekérni, sorrendben:

  • Microsoft-alkalmazások között megosztott helyi gyorsítótár
  • Az aktuális felhasználói környezet a Visual Studióban
  • Az aktuális felhasználói környezet a Visual Studio Code-ban
  • Az Azure CLI aktuális felhasználói környezete

Ha egyik lehetőség sem sikeres, hiba történik.

Előfordulhat, hogy az identitása már rendelkezik bizonyos szerepkör-hozzárendelésekkel a fejlesztéshez használt Azure-erőforrásokhoz, de előfordulhat, hogy ezek a szerepkörök nem biztosítják a szükséges adathozzáférést. A tulajdonoshoz hasonló felügyeleti szerepkörök nem elegendőek. Ellenőrizze, hogy milyen engedélyek szükségesek az egyes összetevők kapcsolataihoz, és győződjön meg arról, hogy azokat saját magához rendelte.

Bizonyos esetekben előfordulhat, hogy más identitás használatát szeretné megadni. Hozzáadhat konfigurációs tulajdonságokat a kapcsolathoz, amelyek a Microsoft Entra szolgáltatásnév ügyfélazonosítója és titkos ügyfélkódja alapján másodlagos identitásra mutatnak. Ez a konfigurációs beállítás nem támogatott az Azure Functions szolgáltatásban való üzemeltetés esetén. Ha azonosítót és titkos kulcsot szeretne használni a helyi gépen, adja meg a kapcsolatot a következő további tulajdonságokkal:

Tulajdonság Környezeti változó sablonja Leírás
Bérlőazonosító <CONNECTION_NAME_PREFIX>__tenantId A Microsoft Entra-bérlő (címtár) azonosítója.
Ügyfél azonosítója <CONNECTION_NAME_PREFIX>__clientId Egy alkalmazásregisztráció ügyfél-(alkalmazás-) azonosítója a bérlőben.
Titkos ügyfélkód <CONNECTION_NAME_PREFIX>__clientSecret Az alkalmazásregisztrációhoz létrehozott ügyfélkód.

Íme egy példa az local.settings.json Azure Blobokkal való identitásalapú kapcsolathoz szükséges tulajdonságokra:

{
  "IsEncrypted": false,
  "Values": {
    "<CONNECTION_NAME_PREFIX>__blobServiceUri": "<blobServiceUri>",
    "<CONNECTION_NAME_PREFIX>__queueServiceUri": "<queueServiceUri>",
    "<CONNECTION_NAME_PREFIX>__tenantId": "<tenantId>",
    "<CONNECTION_NAME_PREFIX>__clientId": "<clientId>",
    "<CONNECTION_NAME_PREFIX>__clientSecret": "<clientSecret>"
  }
}

Csatlakozás gazdagépre identitással

Az Azure Functions-gazdagép a be van állítva AzureWebJobsStorage tárolókapcsolatot használja olyan alapvető viselkedések engedélyezéséhez, mint például az időzítő eseményindítók egyszeri végrehajtásának koordinálása és az alapértelmezett alkalmazáskulcs-tárolás. Ez a kapcsolat identitás használatára is konfigurálható.

Figyelem

A Functions más összetevői az alapértelmezett viselkedésre támaszkodnak AzureWebJobsStorage . Nem helyezheti át identitásalapú kapcsolatra, ha olyan bővítmények régebbi verzióit használja, amelyek nem támogatják ezt a típusú kapcsolatot, beleértve az Azure Blobs, az Event Hubs és a Durable Functions eseményindítóit és kötéseit. Hasonlóképpen AzureWebJobsStorage az üzembehelyezési összetevőkhöz is használható, amikor kiszolgálóoldali buildet használ a Linux-használatban, és ha engedélyezi ezt, egy külső üzembehelyezési csomagon keresztül kell üzembe helyeznie.

Emellett előfordulhat, hogy a függvényalkalmazás újrahasználja AzureWebJobsStorage az eseményindítókban, kötésekben és/vagy függvénykódokban lévő egyéb tárolási kapcsolatokat. A kapcsolat kapcsolati sztring való módosítása előtt győződjön meg arról, hogy az összes felhasználási mód AzureWebJobsStorage használhatja az identitásalapú kapcsolatformátumot.

Identitásalapú kapcsolat AzureWebJobsStoragehasználatához konfigurálja a következő alkalmazásbeállításokat:

Beállítás Leírás Példaérték
AzureWebJobsStorage__blobServiceUri A tárfiók blobszolgáltatásának adatsík URI-ja a HTTPS-séma használatával. <https:// storage_account_name.blob.core.windows.net>
AzureWebJobsStorage__queueServiceUri A tárfiók üzenetsor-szolgáltatásának adatsík URI-ja a HTTPS-séma használatával. <https:// storage_account_name.queue.core.windows.net>
AzureWebJobsStorage__tableServiceUri A tárfiók táblaszolgáltatásának adatsík URI-ja a HTTPS-séma használatával. <https:// storage_account_name.table.core.windows.net>

Az identitásalapú kapcsolatok általános tulajdonságai is beállíthatók .

Ha AzureWebJobsStorage olyan tárfiókot használ, amely a globális Azure alapértelmezett DNS-utótagját és szolgáltatásnevét használja, a https://<accountName>.[blob|queue|file|table].core.windows.net formátumot követve ehelyett beállíthatja AzureWebJobsStorage__accountName a tárfiók nevét. Az egyes tárolási szolgáltatások végpontjai erre a fiókra következtetnek. Ez nem működik, ha a tárfiók szuverén felhőben van, vagy egyéni DNS-sel rendelkezik.

Beállítás Leírás Példaérték
AzureWebJobsStorage__accountName A tárfiók fiókneve csak akkor érvényes, ha a fiók nincs szuverén felhőben, és nem rendelkezik egyéni DNS-sel. Ez a szintaxis egyedi, AzureWebJobsStorage és nem használható más identitásalapú kapcsolatokhoz. <storage_account_name>

Létre kell hoznia egy szerepkör-hozzárendelést, amely hozzáférést biztosít az "AzureWebJobsStorage" tárfiókjához futásidőben. A tulajdonoshoz hasonló felügyeleti szerepkörök nem elegendőek. A Storage Blob Data Owner szerepkör lefedi a Functions gazdagéptároló alapvető igényeit – a futtatókörnyezetnek olvasási és írási hozzáférést kell biztosítania a blobokhoz, valamint tárolókat kell létrehoznia. Több bővítmény is ezt a kapcsolatot használja alapértelmezett helyként blobok, üzenetsorok és táblák esetében, és ezek a használatok követelményeket is tartalmazhatnak az alábbi táblázatban leírtak szerint. További engedélyekre lehet szüksége, ha az "AzureWebJobsStorage"-t bármilyen más célra használja.

Bővítmény Szerepkörök szükségesek Magyarázat
Nincs bővítmény (csak gazdagép) Storage-blobadatok tulajdonosa Általános koordinációhoz használatos, alapértelmezett kulcstároló
Azure-blobok (csak trigger) A következők mindegyike:
Tárfiók közreműködője,
Storage Blob Data Owner,
Tárolási várólista adatszolgáltatója
A blob-eseményindító belsőleg az Azure Queuest használja, és blobbevételeket ír. Ezekhez az AzureWebJobsStorage-t használja, függetlenül az eseményindítóhoz konfigurált kapcsolattól.
Azure Event Hubs (csak eseményindító) (nincs változás az alapértelmezett követelménytől)
Storage-blobadatok tulajdonosa
Az ellenőrzőpontok az AzureWebJobsStorage kapcsolat használatával blobokban maradnak meg.
Időzítő-eseményindító (nincs változás az alapértelmezett követelménytől)
Storage-blobadatok tulajdonosa
Az eseményenként egy végrehajtás biztosítása érdekében a zárolások blobokkal lesznek rögzítve az AzureWebJobsStorage kapcsolat használatával.
Tartós függvények A következők mindegyike:
Storage Blob Data Közreműködő,
Tárolási várólista adatszolgáltatója,
Storage Table Data Közreműködő
A Durable Functions blobokat, üzenetsorokat és táblákat használ a tevékenységfüggvények koordinálásához és a vezénylési állapot fenntartásához. Ezekhez alapértelmezés szerint az AzureWebJobsStorage kapcsolatot használja, de a Durable Functions bővítménykonfigurációjában megadhat egy másik kapcsolatot.

Jelentéskészítési problémák

Tétel Leírás Hivatkozás
Futtatókörnyezet Szkriptgazda, Triggerek > Kötések, Nyelvi támogatás Probléma fájlba adása
Sablonok Kódproblémák a létrehozási sablonnal kapcsolatban Probléma fájlba adása
Portál Felhasználói felülettel vagy felhasználói felülettel kapcsolatos probléma Probléma fájlba adása

Nyílt forráskódú adattárak

Az Azure Functions kódja nyílt forráskód, és az alábbi GitHub-adattárakban találja a legfontosabb összetevőket:

További lépések

További információkat találhat az alábbi forrásokban: