Aracılığıyla paylaş


Azure Container Apps dinamik oturumlarına genel bakış

Azure Container Apps dinamik oturumları, diğer iş yüklerinden güçlü yalıtım gerektiren kod veya uygulamaları çalıştırmak için ideal olan güvenli korumalı alan ortamlarına hızlı erişim sağlar.

Oturumlar aşağıdaki özniteliklere sahiptir:

  • Güçlü yalıtım: Oturumlar birbirinden ve konak ortamından yalıtılır. Her oturum kendi Hyper-V korumalı alanında çalışır ve kurumsal düzeyde güvenlik ve yalıtım sağlar. İsteğe bağlı olarak, güvenliği daha da geliştirmek için ağ yalıtımını etkinleştirebilirsiniz.

  • Basit erişim: Oturumlara REST API aracılığıyla erişilir. Her oturumu benzersiz bir tanımlayıcı işaretler. Belirli bir tanımlayıcıya sahip bir oturum yoksa, yeni bir oturum otomatik olarak ayrılır.

  • Tam olarak yönetilen: Platform bir oturumun yaşam döngüsünü tam olarak yönetir. Oturumlar artık kullanımda olmadığında otomatik olarak temizlenir.

  • Hızlı başlangıç: Milisaniye cinsinden yeni bir oturum ayrılır. Hızlı başlangıçlar, hazır ancak ayrılmamış oturumlardan oluşan bir havuzun otomatik olarak korunmasıyla elde edilir.

  • Ölçeklenebilir: Oturumlar yüksek ölçekte çalıştırılabilir. Yüzlerce veya binlerce oturumu eşzamanlı olarak çalıştırabilirsiniz.

Not

Azure Container Apps dinamik oturumları şu anda önizleme aşamasındadır.

Oturum türleri

Azure Container Apps iki tür oturumu destekler:

Type Açıklama Faturalama modeli
Kod yorumlayıcı Tam olarak yönetilen kod yorumlayıcı Oturum başına (tüketim)
Özel kapsayıcı Kendi kapsayıcınızı getirme Container Apps Ayrılmış Planı

Kod yorumlayıcı

Kod yorumlayıcı oturumları, popüler kitaplıklarla önceden yüklenmiş bir korumalı alanda kod çalıştırmanıza olanak sağlar. Uygulamanızın kullanıcıları tarafından sağlanan kod veya büyük bir dil modeli (LLM) tarafından oluşturulan kod gibi güvenilmeyen kodu çalıştırmak için idealdir. Kod yorumlayıcı oturumları hakkında daha fazla bilgi edinin.

Özel kapsayıcı

Özel kapsayıcı oturumları, güvenli, yalıtılmış korumalı alanlarda kendi kapsayıcı görüntülerinizi çalıştırmanıza olanak sağlar. Bunları, kullanıma hazır olarak desteklenmeyen bir dil için özel kod yorumlayıcı çalıştırmak veya güçlü yalıtım gerektiren iş yüklerini çalıştırmak için kullanabilirsiniz. Özel kapsayıcı oturumları hakkında daha fazla bilgi edinin.

Kavramlar

Azure Container Apps dinamik oturumlarındaki temel kavramlar, oturum havuzları ve oturumlardır.

Oturum havuzları

Azure Container Apps, saniyenin altında oturum ayırma süreleri sağlamak için hazır ancak ayrılmamış oturumlardan oluşan bir havuz tutar. Yeni bir oturuma istek gönderdiğinizde, platform havuzdan size bir oturum ayırır. Oturumlar ayrılırken platform, sabit sayıda hazır oturumu korumak için havuzu otomatik olarak yeniler.

Havuzları, özelliği aracılığıyla maxConcurrentSessions eşzamanlı olarak ayrılabilecek en fazla oturum sayısını ayarlanacak şekilde yapılandırabilirsiniz. Bir oturum özelliği silinmeden cooldownPeriodInSeconds önce son istekten bekleme süresini ayarlayabilirsiniz. Özel kapsayıcı oturumları için, aracılığıyla readySessionInstanceshavuzda hazır tutulacak oturumların hedef sayısı da dahil olmak üzere havuzdaki oturumlar için kullanılacak kapsayıcı görüntüsünü ve ayarlarını da belirtebilirsiniz.

Oturumlar

Oturum, kodunuzu veya uygulamanızı çalıştıran korumalı bir ortamdır. Her oturum, hyper-V korumalı alanıyla diğer oturumlardan ve konak ortamından yalıtılır. İsteğe bağlı olarak, güvenliği daha da geliştirmek için ağ yalıtımını etkinleştirebilirsiniz.

Oturum tanımlayıcıları

Havuzdaki oturumlarla etkileşim kurarken, her oturumu yönetmek için bir oturum tanımlayıcısı tanımlamanız gerekir. Oturum tanımlayıcısı serbest biçimli bir dizedir; başka bir deyişle, bunu uygulamanızın gereksinimlerine uygun herhangi bir şekilde tanımlayabilirsiniz. Bu tanımlayıcı, oturumun davranışını belirlemede önemli bir öğedir:

  • Mevcut oturumların yeniden kullanımı: Tanımlayıcıyla eşleşen zaten çalışan bir oturum varsa bu oturum yeniden kullanılır.
  • Yeni oturum ayırma: Çalışan bir oturum tanımlayıcıyla eşleşmiyorsa havuzdan otomatik olarak yeni bir oturum ayrılır.

Oturum tanımlayıcısı, tanımladığınız ve oturum havuzu içinde benzersiz olan bir dizedir. Web uygulaması oluşturuyorsanız kullanıcının kimliğini kullanabilirsiniz. Sohbet botu oluşturuyorsanız konuşma kimliğini kullanabilirsiniz.

Tanımlayıcı, 4 ila 128 karakter uzunluğunda bir dize olmalıdır ve yalnızca bu listeden alfasayısal karakterler ve özel karakterler içerebilir: |, -, &, ^, %, $, #(, }{)];[<ve .>

Oturuma istekte bulunurken oturum tanımlayıcısını URL'de adlı identifier sorgu parametresine geçirirsiniz.

Kod yorumlayıcı oturumları için LLM çerçevesiyle tümleştirme de kullanabilirsiniz. Çerçeve, belirteç oluşturma ve yönetimi sizin için işler. Uygulamanın, oturum havuzunda gerekli rol atamalarına sahip yönetilen bir kimlikle yapılandırıldığından emin olun.

Oturum tanımlayıcılarını koruma

Oturum tanımlayıcısı, değerini oluşturup yönetirken güvenli bir işlem gerektiren hassas bilgilerdir. Bu değeri korumak için uygulamanızın her kullanıcının veya kiracının yalnızca kendi oturumlarına erişimi olduğundan emin olması gerekir.

Oturum tanımlayıcılarının kötüye kullanılmasını engelleyen belirli stratejiler, uygulamanızın tasarımına ve mimarisine bağlı olarak farklılık gösterir. Ancak, kötü niyetli bir kullanıcının başka bir kullanıcının oturumuna erişememeleri için uygulamanızın oturum tanımlayıcıları oluşturma ve kullanma üzerinde her zaman tam denetime sahip olması gerekir.

Örnek stratejiler şunlardır:

  • Kullanıcı başına bir oturum: Uygulamanız kullanıcı başına bir oturum kullanıyorsa, her kullanıcının kimliğinin güvenli bir şekilde doğrulanması ve uygulamanızın oturum açmış her kullanıcı için benzersiz bir oturum tanımlayıcısı kullanması gerekir.
  • Aracı konuşması başına bir oturum: Uygulamanız yapay zeka aracısı konuşması başına bir oturum kullanıyorsa, uygulamanızın son kullanıcı tarafından değiştirilmeyecek her konuşma için benzersiz bir oturum tanımlayıcısı kullandığından emin olun.

Önemli

Oturumlara erişimin güvenliğinin sağlanamaması, kullanıcılarınızın oturumlarında depolanan verilere yanlış veya yetkisiz erişime neden olabilir.

Kimlik Doğrulaması

Kimlik doğrulaması, Microsoft Entra (eski adıyla Azure Active Directory) belirteçleri kullanılarak işlenir. Geçerli Microsoft Entra belirteçleri, oturum havuzundaki Azure ContainerApps Oturum Yürütücüsü ve Katkıda Bulunan rollerine ait bir kimlik tarafından oluşturulur.

Rolleri bir kimliğe atamak için aşağıdaki Azure CLI komutlarını kullanın:

az role assignment create \
    --role "Azure ContainerApps Session Executor" \
    --assignee <PRINCIPAL_ID> \
    --scope <SESSION_POOL_RESOURCE_ID>

az role assignment create \
    --role "Contributor" \
    --assignee <PRINCIPAL_ID> \
    --scope <SESSION_POOL_RESOURCE_ID>

LLM çerçevesi tümleştirmesi kullanıyorsanız, çerçeve sizin için belirteç oluşturma ve yönetimi işler. Uygulamanın, oturum havuzunda gerekli rol atamalarıyla yönetilen bir kimlikle yapılandırıldığından emin olun.

Havuzun yönetim API'sinin uç noktalarını doğrudan kullanıyorsanız, bir belirteç oluşturmanız ve bunu Authorization HTTP isteklerinizin üst bilgisine eklemeniz gerekir. Daha önce bahsedilen rol atamalarına ek olarak belirtecin değerine https://dynamicsessions.iosahip bir hedef kitle (aud) talebi içermesi gerekir.

Azure CLI kullanarak belirteç oluşturmak için aşağıdaki komutu çalıştırın:

az account get-access-token --resource https://dynamicsessions.io

Önemli

Havuzdaki herhangi bir oturum oluşturmak ve bu oturumlara erişmek için geçerli bir belirteç kullanılabilir. Belirteçlerinizi güvende tutun ve güvenilmeyen taraflarla paylaşmayın. Son kullanıcıların oturumlara doğrudan değil uygulamanız üzerinden erişmesi gerekir.

Yaşam döngüsü

Container Apps çalışma zamanı, bir oturum havuzundaki her oturumun yaşam döngüsünü otomatik olarak yönetir.

  • Beklemede: Bir oturum başlatıldığında bekleme durumundadır. Oturumun bekleme durumunda harcadığı süre, oturum havuzu için belirttiğiniz kapsayıcı görüntüsüne ve ayarlarına bağlıdır. Bekleyen oturum, hazır oturum havuzuna eklenmez.

  • Hazır: Oturumun başlatılması tamamlandığında ve hazır olduğunda havuza eklenir. Oturum bu durumda ayırma için kullanılabilir. Özel kapsayıcı oturumları için havuzda tutulacak hazır oturumların hedef sayısını belirtebilirsiniz. Oturumlar havuz yenilendiğinden daha hızlı ayrılırsa bu sayıyı artırın.

  • Ayrılmış: Çalıştırılmayan bir oturuma istek gönderdiğinizde havuz yeni bir oturum sağlar ve ayrılmış duruma yerleştirir. Aynı oturum tanımlayıcısına sahip sonraki istekler aynı oturuma yönlendirilir.

  • Silme: Bir oturum, ayar tarafından cooldownPeriodInSeconds tanımlanan süre boyunca istekleri almayı durdurduğunda, oturum ve Hyper-V korumalı alanı tamamen ve güvenli bir şekilde silinir.

Güvenlik

Azure Container Apps dinamik oturumları, güvenilmeyen kodu ve uygulamaları güvenli ve yalıtılmış bir ortamda çalıştıracak şekilde oluşturulur. Oturumlar birbirinden yalıtılmış olsa da, dosyalar ve ortam değişkenleri de dahil olmak üzere tek bir oturumdaki her şeye oturumun kullanıcıları tarafından erişilebilir. Hassas verileri yalnızca oturumun kullanıcılarına güveniyorsanız yapılandırmanız veya oturuma yüklemeniz gerekir.

Önizleme sınırlamaları

Azure Container Apps dinamik oturumları şu anda önizleme aşamasındadır. Aşağıdaki sınırlamalar geçerlidir:

  • Yalnızca aşağıdaki bölgelerde kullanılabilir:

    Bölge Kod yorumlayıcı Özel kapsayıcı
    Doğu Asya
    Doğu ABD
    Orta Batı Almanya
    Kuzey İtalya
    Polonya Merkezi
    Orta Kuzey ABD -
    Kuzey Avrupa
    Batı ABD 2
  • Günlüğe kaydetme desteklenmez. Uygulamanız oturum havuzu yönetim API'sine ve yanıtlarına yönelik istekleri günlüğe kaydedebilir.

Sonraki adımlar