Az Azure Container Apps dinamikus munkameneteinek áttekintése
Az Azure Container Apps dinamikus munkamenetei gyors hozzáférést biztosítanak biztonságos tesztkörnyezetekhez, amelyek ideálisak olyan kódok vagy alkalmazások futtatásához, amelyek más számítási feladatoktól való erős elkülönítést igényelnek.
A munkamenetek a következő attribútumokkal rendelkeznek:
Erős elkülönítés: A munkamenetek el vannak különítve egymástól és a gazdakörnyezettől. Minden munkamenet saját Hyper-V tesztkörnyezetben fut, amely nagyvállalati szintű biztonságot és elkülönítést biztosít. Opcionálisan engedélyezheti a hálózatelkülönítést a biztonság további javítása érdekében.
Egyszerű hozzáférés: A munkamenetek egy REST API-val érhetők el. Az egyes munkameneteket egyedi azonosító jelöli. Ha egy adott azonosítóval rendelkező munkamenet nem létezik, a rendszer automatikusan lefoglal egy új munkamenetet.
Teljes körűen felügyelt: A platform teljes mértékben felügyeli a munkamenetek életciklusát. A munkamenetek automatikusan törlődnek, ha már nincs használatban.
Gyors indítás: A rendszer ezredmásodpercben lefoglal egy új munkamenetet. A gyors indítások a kész, de nem áthelyezett munkamenetek készletének automatikus fenntartásával érhetők el.
Méretezhető: A munkamenetek nagy léptékben futtathatók. Egyszerre több száz vagy több ezer munkamenetet is futtathat.
Szekciótípusok
Az Azure Container Apps kétféle munkamenetet támogat:
Típus | Leírás | Számlázási modell |
---|---|---|
Kódértelmező | Teljes körűen felügyelt kódértelmező | Munkamenetenként (használat) |
Egyéni tároló | Saját tároló használata | Dedikált Container Apps-csomag |
Kódértelmező
A kódértelmező-munkamenetek lehetővé teszik a kód futtatását egy olyan tesztkörnyezetben, amely előre telepítve van a népszerű kódtárakkal. Ideálisak nem megbízható kódok futtatásához, például az alkalmazás felhasználói által biztosított kód vagy egy nagy nyelvi modell (LLM) által létrehozott kód futtatásához. További információ a kódértelmező-munkamenetekről.
Egyéni tároló
Az egyéni tároló munkamenetek lehetővé teszik saját tárolólemezképek biztonságos, elkülönített tesztkörnyezetekben való futtatását. Ezekkel egyéni kódértelmezőt futtathat egy olyan nyelvhez, amely nem támogatott a dobozon kívül, vagy futtathat olyan számítási feladatokat, amelyek erős elkülönítést igényelnek. További információ az egyéni tároló munkamenetekről.
Fogalmak
Az Azure Container Apps dinamikus munkameneteinek fő fogalmai a munkamenetkészletek és a munkamenetek.
Munkamenetkészletek
A másodlagos munkamenetek lefoglalási idejének biztosítása érdekében az Azure Container Apps egy kész, de nem áthelyezett munkamenetekből álló készletet tart fenn. Amikor kérést küld egy új munkamenetbe, a platform lefoglal egy munkamenetet a készletből. A munkamenetek lefoglalása során a platform automatikusan feltölti a készletet a készen álló munkamenetek állandó számának fenntartása érdekében.
A készletek úgy konfigurálhatók, hogy a tulajdonságon keresztül maxConcurrentSessions
egyidejűleg lefoglalható munkamenetek maximális száma legyen megadva. Beállíthatja a várakozási időtartamot az utolsó kéréstől, mielőtt egy munkamenet törölve lett a cooldownPeriodInSeconds
tulajdonságból. Egyéni tároló-munkamenetek esetén megadhatja a készletben lévő munkamenetekhez használandó tárolórendszerképet és beállításokat is, beleértve a készleten keresztüli readySessionInstances
használatra kész munkamenetek célszámát is.
Előadások
A munkamenet egy tesztkörnyezet, amely futtatja a kódot vagy az alkalmazást. Minden munkamenet el van különítve a többi munkamenettől és a gazdakörnyezettől egy Hyper-V tesztkörnyezettel. Opcionálisan engedélyezheti a hálózatelkülönítést a biztonság további javítása érdekében.
HTTP-kérések küldésével kezelheti a munkamenetkészlet munkameneteit. Minden munkamenetkészletnek egyedi készletkezelési végpontja van.
A kódértelmezői munkamenetek esetében az LLM-keretrendszerrel való integrációt is használhatja.
Munkamenet-azonosítók
HA HTTP-kérést szeretne küldeni egy munkamenetbe, meg kell adnia egy munkamenet-azonosítót a kérelemben. A munkamenet-azonosítót az URL-címben elnevezett identifier
lekérdezési paraméterben adja át, amikor kérést küld egy munkamenethez.
- Ha már létezik egy azonosítóval rendelkező munkamenet, a rendszer elküldi a kérést a meglévő munkamenetnek.
- Ha az azonosítóval rendelkező munkamenet nem létezik, a rendszer automatikusan lefoglal egy új munkamenetet, mielőtt elküldené a kérést.
Azonosító formátuma
A munkamenet-azonosító egy szabad formátumú sztring, ami azt jelenti, hogy bármilyen módon megadhatja, amely megfelel az alkalmazás igényeinek.
A munkamenet-azonosító egy olyan sztring, amelyet a munkamenetkészleten belül egyediként határoz meg. Webalkalmazás létrehozásakor a felhasználó azonosítóját használhatja munkamenet-azonosítóként. Ha csevegőrobotot készít, használhatja a beszélgetés azonosítóját.
Az azonosítónak 4–128 karakter hosszúságú sztringnek kell lennie, és csak alfanumerikus karaktereket és speciális karaktereket tartalmazhat a listából: |
, , -
, &
, $
%
)
(
{
}
#
^
]
;
[
<
és .>
Munkamenet-azonosítók védelme
A munkamenet-azonosító bizalmas információ, amelyet biztonságosan kell kezelnie. Az alkalmazásnak biztosítania kell, hogy minden felhasználó vagy bérlő csak a saját munkameneteihez férhessen hozzá.
Az alkalmazás kialakításától és architektúrájától függően eltérőek azok a konkrét stratégiák, amelyek megakadályozzák a munkamenet-azonosítókkal való visszaélést. Az alkalmazásnak azonban mindig teljes körűen szabályoznia kell a munkamenet-azonosítók létrehozását és használatát, hogy egy rosszindulatú felhasználó ne férhessen hozzá egy másik felhasználó munkamenetéhez.
Példastratégiák:
- Felhasználónként egy munkamenet: Ha az alkalmazás felhasználónként egy munkamenetet használ, minden felhasználót biztonságosan hitelesíteni kell, és az alkalmazásnak minden bejelentkezett felhasználóhoz egyedi munkamenet-azonosítót kell használnia.
- Ügynök-beszélgetésenként egy munkamenet: Ha az alkalmazás AI-ügynök beszélgetésenként egy munkamenetet használ, győződjön meg arról, hogy az alkalmazás egyedi munkamenet-azonosítót használ minden olyan beszélgetéshez, amelyet a végfelhasználó nem módosíthat.
Fontos
A munkamenetekhez való hozzáférés biztonságossá tételének elmulasztása a felhasználói munkamenetekben tárolt adatokkal való visszaélést vagy jogosulatlan hozzáférést eredményezhet.
Hitelesítés és engedélyezés
Amikor kéréseket küld egy munkamenetbe a készletkezelési API használatával, a hitelesítés a Microsoft Entra (korábbi nevén Azure Active Directory) jogkivonatokkal történik. A készletkezelési API meghívására csak az Azure ContainerApps munkamenet-végrehajtói szerepköréhez tartozó identitásból származó Microsoft Entra-jogkivonatok jogosultak.
A szerepkör identitáshoz való hozzárendeléséhez használja a következő Azure CLI-parancsot:
az role assignment create \
--role "Azure ContainerApps Session Executor" \
--assignee <PRINCIPAL_ID> \
--scope <SESSION_POOL_RESOURCE_ID>
Ha LLM-keretrendszer-integrációt használ, a keretrendszer kezeli a jogkivonatok létrehozását és kezelését. Győződjön meg arról, hogy az alkalmazás olyan felügyelt identitással van konfigurálva, amely rendelkezik a munkamenetkészlet szükséges szerepkör-hozzárendeléseivel.
Ha közvetlenül a készlet felügyeleti API-végpontjait használja, létre kell hoznia egy jogkivonatot, és bele kell foglalnia a Authorization
HTTP-kérések fejlécében. A korábban említett szerepkör-hozzárendeléseken kívül a jogkivonatnak tartalmaznia kell egy célközönségi (aud
) jogcímet az értékkel https://dynamicsessions.io
.
A jogkivonat azure CLI-vel történő létrehozásához futtassa a következő parancsot:
az account get-access-token --resource https://dynamicsessions.io
Fontos
A készlet bármely munkamenetének létrehozásához és eléréséhez érvényes jogkivonat használható. Tartsa biztonságban a jogkivonatait, és ne ossza meg őket nem megbízható felekkel. A végfelhasználóknak nem közvetlenül, hanem az alkalmazáson keresztül kell hozzáférnie a munkamenetekhez. Soha nem férhetnek hozzá a munkamenetkészlethez érkező kérések hitelesítéséhez használt jogkivonatokhoz.
Életciklus
A Container Apps-futtatókörnyezet automatikusan kezeli a munkamenetkészlet minden munkamenetének életciklusát.
Függőben: Amikor egy munkamenet elindul, az függőben van. A munkamenetek függő állapotban töltött időtartama a munkamenetkészlethez megadott tárolólemezképtől és beállításoktól függ. A függőben lévő munkamenetek nem lesznek hozzáadva a kész munkamenetek készletéhez.
Kész: Ha egy munkamenet készen áll az indításra, és készen áll, a rendszer hozzáadja a készlethez. A munkamenet ebben az állapotban érhető el a foglaláshoz. Egyéni tároló munkamenetek esetén megadhatja a készletben tartani kívánt kész munkamenetek célszámát. Növelje ezt a számot, ha a munkamenetek gyorsabban vannak lefoglalva, mint a készlet feltöltése.
Lefoglalt: Amikor nem futó munkamenetbe küld kérést, a készlet új munkamenetet biztosít, és lefoglalt állapotba helyezi. Az azonos munkamenet-azonosítóval rendelkező későbbi kérések ugyanahhoz a munkamenethez lesznek irányítva.
Törlés: Ha egy munkamenet leállítja a kérések fogadását a
cooldownPeriodInSeconds
beállítás által meghatározott idő alatt, a munkamenet és a Hyper-V tesztkörnyezete teljesen és biztonságosan törlődik.
Biztonság
Az Azure Container Apps dinamikus munkamenetei úgy vannak létrehozva, hogy biztonságos és izolált környezetben futtassa a nem megbízható kódot és alkalmazásokat. Bár a munkamenetek el vannak különítve egymástól, egy munkameneten belül minden, beleértve a fájlokat és a környezeti változókat is, a munkamenet felhasználói hozzáférhetnek. Bizalmas adatokat csak akkor konfigurálhat vagy tölthet fel egy munkamenetbe, ha megbízik a munkamenet felhasználóiban.
Alapértelmezés szerint a munkamenetek nem hajtanak végre kimenő hálózati kéréseket. A hálózati hozzáférést a munkamenetkészlet hálózati állapotbeállításainak konfigurálásával szabályozhatja.
Emellett kövesse a hitelesítési és engedélyezési szakaszban található útmutatást, hogy csak az arra jogosult felhasználók férhessenek hozzá a munkamenetekhez, valamint a munkamenet-azonosítók védelmének szakaszában, hogy a munkamenet-azonosítók biztonságosak legyenek.
Régiónkénti elérhetőség
A dinamikus munkamenetek a következő régiókban érhetők el:
Régió | Kódértelmező | Egyéni tároló |
---|---|---|
Kelet-Ausztrália | ✔ | ✔ |
USA középső régiója – EUAP | ✔ | ✔ |
USA 2. keleti régiója – EUAP | ✔ | ✔ |
USA keleti régiója | ✔ | ✔ |
Kelet-Ázsia | ✔ | ✔ |
Középnyugat-Németország | ✔ | ✔ |
Észak-Olaszország | ✔ | ✔ |
USA északi középső régiója | ✔ | - |
Közép-Lengyelország | ✔ | ✔ |
Észak-Svájc | ✔ | ✔ |
USA nyugati középső régiója | ✔ | ✔ |
USA 2. nyugati régiója | ✔ | ✔ |
Kapcsolódó tartalom
Munkamenettípusok: Tudnivalók a dinamikus munkamenetek különböző típusairól:
Oktatóanyagok: Közvetlenül a REST API-val vagy LLM-ügynökkel végzett munka:
- LLM-ügynök használata:
- A REST API használata