Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makale kümesinde, Azure İşlevleri'de Azure Web PubSub bağlamalarını kullanarak Azure Web PubSub'a bağlı istemcilere kimlik doğrulaması ve gerçek zamanlı ileti gönderme işlemleri açıklanmaktadır.
| Eylem | Tür |
|---|---|
| Web PubSub'dan istemci olaylarını işleme | Tetikleyici bağlaması |
| Http tetikleyicisi ile Web PubSub'dan istemci olaylarını işleme veya istemci erişim URL'si ve belirteci döndürme | Giriş bağlaması |
| Hizmet API'lerini çağırma | Çıkış bağlaması |
Uzantıyı yükleme
Yüklediğiniz NuGet uzantısı, işlev uygulamanızda kullandığınız C# moduna bağlıdır:
İşlevler yalıtılmış bir C# çalışan işleminde yürütülür. Daha fazla bilgi edinmek için bkz. Yalıtılmış çalışan işleminde C# Azure İşlevleri çalıştırma kılavuzu.
Bu NuGet paketini yükleyerek uzantıyı projenize ekleyin.
Paket yükleme
Bu bağlama uzantısını uygulamanızda kullanabilmek için projenizin kökündeki host.json dosyasının şu extensionBundle başvuruyu içerdiğinden emin olun:
{
"version": "2.0",
"extensionBundle": {
"id": "Microsoft.Azure.Functions.ExtensionBundle",
"version": "[4.0.0, 5.0.0)"
}
}
Bu örnekte, version değeri [4.0.0, 5.0.0) İşlevler konağına en az 4.0.0 ama daha küçük 5.0.0olan ve 4.x'in tüm olası sürümlerini içeren bir paket sürümü kullanma talimatı verir. Bu gösterimi, uygulamanızı v4.x uzantı paketinin kullanılabilir en son ikincil sürümünde etkili bir şekilde korur.
Mümkün olduğunda, en son uzantı paketi ana sürümünü kullanmanız ve çalışma zamanının en son ikincil sürümü otomatik olarak korumasına izin vermelisiniz. Uzantı paketleri yayın sayfasında en son paketin içeriğini görüntüleyebilirsiniz. Daha fazla bilgi için bkz. Azure İşlevleri uzantı paketleri.
Not
Java için Web PubSub uzantıları henüz desteklenmiyor.
Temel kavramlar
(1)-(2) WebPubSubConnection istemci bağlantısı oluşturmak için HttpTrigger ile giriş bağlaması.
(3)-(4) WebPubSubTrigger hizmet isteğini işlemek için HttpTrigger ile bağlamayı veya WebPubSubContext giriş bağlamasını tetikler.
(5)-(6) WebPubSub istek hizmetine bir şey yapmak için çıkış bağlaması.
Bağlantı
Azure Web PubSub hizmetine bağlanmak için bağlantı dizesini veya Microsoft Entra kimliğini kullanabilirsiniz.
Bağlantı Dizesi
Web PubSub bağlantı dizesi depolamak için varsayılan olarak adlı WebPubSubConnectionString bir uygulama ayarı kullanılır. Bağlantınız için farklı bir ayar adı kullanmayı seçtiğinizde, bunu bağlama tanımlarınızda anahtar adı olarak açıkça ayarlamanız gerekir. Yerel geliştirme sırasında, bu ayarı Valueslocal.settings.json dosyasındaki koleksiyona da eklemeniz gerekir.
Önemli
bağlantı dizesi, uygulamanızın Azure Web PubSub hizmetine erişmesi için gereken yetkilendirme bilgilerini içerir. bağlantı dizesi içindeki erişim anahtarı, hizmetinizin kök parolasına benzer. En iyi güvenlik için, işlev uygulamanız bir bağlantı dizesi kullanmak yerine Web PubSub hizmetine bağlanırken yönetilen kimlikleri kullanmalıdır.
Web PubSub ve Azure İşlevleri birlikte yapılandırma ve kullanma hakkında ayrıntılı bilgi için Öğretici: Azure İşlevleri ve Azure Web PubSub hizmetiyle sunucusuz bildirim uygulaması oluşturma makalesine bakın.
Kimlik tabanlı bağlantılar
Azure Web PubSub İşlevleri Uzantıları v1.10.0 veya üzerini kullanıyorsanız, erişim anahtarına sahip bir bağlantı dizesi kullanmak yerine işlev uygulamanızı Microsoft Entra kimliği kullanarak Azure Web PubSub'da kimlik doğrulaması yapmak üzere yapılandırabilirsiniz.
Bu yaklaşım gizli dizileri yönetme gereksinimini ortadan kaldırır ve üretim iş yükleri için önerilir.
Önkoşullar
İşlev uygulamanız tarafından kullanılan Microsoft Entra kimliğine hedef Web PubSub kaynağında uygun bir Azure RBAC rolü verildiğinden emin olun:
Konfigürasyon
Azure İşlevleri'ndeki kimlik tabanlı bağlantılar, ortak ön eki paylaşan bir dizi ayar kullanır. Varsayılan olarak, Azure Web PubSub İşlevleri uzantıları ön ekiyle WebPubSubConnectionStringayarları arar. Tetikleyicinizde veya bağlamanızda özelliğini ayarlayarak connection bu ön eki özelleştirebilirsiniz.
Azure Web PubSub için sağlamanız gereken hizmete özgü ayar hizmet uç noktası URI'sine yöneliktir:
| Mülkiyet | Ortam değişkeni şablonu | Description | Gerekli |
|---|---|---|---|
| Hizmet URI'si | WebPubSubConnectionString__serviceUri |
Web PubSub hizmet uç noktanızın URI'sini. | Yes |
Azure İşlevleri hizmetinde barındırıldığında, kimlik tabanlı bağlantılar yönetilen kimlik kullanır. Sistem tarafından atanan kimlik varsayılan olarak kullanılır, ancak kullanıcı tarafından atanan bir kimlik belirtilebilir. Kimliği özelleştirme hakkında daha fazla bilgi için, Kimlik tabanlı bağlantılar için ortak özellikler.
Yerel geliştirme gibi diğer bağlamlarda çalıştırıldığında, bunun yerine geliştirici kimliğiniz kullanılır, ancak bu özelleştirilebilir. Bkz. Kimlik tabanlı bağlantılarla yerel geliştirme.
Örnek yapılandırma
Aşağıdaki örnek, kimlik tabanlı yapılandırmayı varsayılan ayarlarla gösterir:
{
"WebPubSubConnectionString__serviceUri": "https://your-webpubsub.webpubsub.azure.com"
}
Not
Yerel, local.settings.json veya Key Vault'ta kimlik tabanlı bağlantılar için ayarlar sağlamak üzere dosya kullanırken, adların doğru çözümlendiğinden emin olmak için ayarın adını ile __ değiştirin:.
Örneğin, WebPubSubConnectionString:serviceUri.