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.
Şunlar için geçerlidir: Azure Logic Apps (Tüketim + Standart)
İş akışlarınızı gelişmiş hesaplamalar gerçekleştiren veya dinamik verileri işleyen özel kodla genişletmek için Azure Logic Apps'teki iş akışlarından Azure İşlevleri'nde işlevler oluşturun ve çağırın. Azure İşlevleri'nde işlevler oluşturduğunuzda, aşağıdaki gibi görevleri tamamlayabilirsiniz:
- C# veya Node.jskullanarak oluşturulan işlevleri çalıştırın.
- İş akışınızda gelişmiş hesaplamalar yapın.
- İş akışınıza gelişmiş biçimlendirme veya işlem alanları uygulayın.
Bu kılavuz, Azure Logic Apps'te Tüketim veya Standart iş akışınızdan Azure İşlevleri'nde bir işlevi çağırmayı ve çalıştırmayı gösterir. Ayrıca sorunsuz tümleştirme ve en iyi performansı sağlamak için Azure İşlevleri ile çalışmaya yönelik önkoşullar, sınırlamalar ve ipuçları hakkında da bilgi edinebilirsiniz.
Tavsiye
Azure İşlevleri kullanmadan kod çalıştırmak için bkz:
Daha fazla bilgi için bakınız:
Sınırlamalar
Azure İşlevleri'nin iş akışınızda doğru şekilde çalışması için aşağıdaki sınırlamaları gözden geçirin:
İşlev uygulaması kaynakları .NET veya Node.js çalışma zamanı yığınını kullanmalıdır.
İşlevler C# veya JavaScript koduyla yazılmalıdır.
İşlevler HTTP tetikleyici şablonunu kullanmalıdır.
HTTP tetikleyici şablonu, iş akışınızdan giriş olarak türüne
application/jsonsahip içeriği kabul edebilir ve işleyebilir. İş akışınıza bir Azure işlevi eklediğinizde, iş akışı tasarımcısı Azure aboneliğinizde bu şablonla oluşturulan tüm kullanılabilir özel işlevleri gösterir.İşlevler, karşılık gelen OpenAPI tanımlarına sahip olmadığı sürece özel yolları kullanamaz.
İşlevinizin OpenAPI tanımı varsa, iş akışı tasarımcısı işlev parametreleriyle çalışırken size daha zengin bir deneyim sunar. İş akışınız OpenAPI tanımlarına sahip işlevleri bulup bunlara erişmeden önce , aşağıdaki adımlarla işlev uygulamanızı ayarlayın.
Azure işlev çağrısı kimlik doğrulaması için yalnızca Tüketim iş akışları Microsoft Entra Id ile yönetilen kimlik kimlik doğrulamasını destekler. Daha fazla bilgi için bkz. Azure işlev çağrıları için kimlik doğrulamasını etkinleştirme.
Standart iş akışları yönetilen kimlik kimlik doğrulamayı desteklemez.
Azure Logic Apps, dağıtım yuvaları etkinleştirilmiş Azure İşlevleri kullanmayı desteklemez.
Bu senaryo bazen işe yarayabilir ancak bu davranış tahmin edilemez ve iş akışınız Azure işlevini çağırmaya çalıştığında yetkilendirme sorunlarına neden olabilir.
Önkoşullar
Bir Azure hesabı ve aboneliği Ücretsiz bir Azure hesabı edinin.
Bir veya daha fazla Azure işlevi içerebilen bir Azure işlev uygulaması kaynağı.
İşlev uygulaması kaynağınızın ve mantıksal uygulama kaynağınızın aynı Azure aboneliğinde bulunduğundan emin olun.
İş akışınızdan çağrılacak Azure işlevi.
Bu işlevi oluşturmak için aşağıdaki araçlardan herhangi birini kullanın:
İşlev kodunuz, işlev tamamlandıktan sonra iş akışınıza döndürülmesini istediğiniz yanıtı ve yükü içermelidir.
Bu kılavuzda FabrikamAzureFunction adlı aşağıdaki örnek işlev kullanılmaktadır.
contextBu örnek işlevdeki nesne, iş akışınızın İstek Gövdesi adlı Azure İşlevleri eylem parametresi aracılığıyla gönderdiği iletiye başvurur ve daha sonra bu kılavuzda açıklanmıştır:module.exports = function (context, data) { var input = data; // Function processing logic // Function response for later use context.res = { body: { content:"Thank you for your feedback: " + input } }; context.done(); }İşlevinizin içinden nesnenin
contextözelliklerine erişmek için aşağıdaki söz dizimini kullanın:context.body.<property-name>Örneğin,
contextiçindekicontentözelliğine başvurmak için şu kodu kullanın:context.body.contentBu kod, işlevinizin bu değer üzerinde işlem yapabilmesi için parametresindeki
inputdeğeri depolayan birdatadeğişken de içerir. JavaScript işlevleri içinde,datadeğişkeni,context.bodyiçin bir kısayoldur.Not
bodyBurada bahsedilen özellik nesnesi içincontextgeçerlidir ve eylemin çıkışındaki Gövde değerinden farklıdır ve işlevinize de geçirebilirsiniz.
Herhangi bir tetikleyiciyle başlayan bir Tüketim veya Standart mantıksal uygulama iş akışı.
Bu kılavuzdaki örneklerde Yeni bir e-posta geldiğinde adlı Office 365 Outlook tetikleyicisi kullanılır.
Başka bir iş akışını çağıran bir Azure işlevi oluşturmak ve çağırmak için, ikincil iş akışının çağrılabilen uç nokta sağlayan bir tetikleyiciyle başladığından emin olun.
Örneğin, iş akışını genel HTTP veya İstek tetikleyicisiyle başlatabilir veya Azure Kuyrukları veya Event Grid gibi hizmet tabanlı bir tetikleyici kullanabilirsiniz. İşlevinizin içinde tetikleyicinin URL'sine bir HTTP POST isteği gönderin ve ikincil iş akışınızın işlemesini istediğiniz yükü ekleyin. Daha fazla bilgi için bkz Mantıksal uygulama iş akışlarını çağırma, tetikleme veya iç içe yerleştirme.
Azure İşlevleri ile çalışma ipuçları
OpenAPI tanımlarıyla işlevleri bulma
İş akışınızın OpenAPI tanımlarına sahip işlevleri bulabilmesi ve kullanabilmesi için işlev uygulamanızı ayarlamak için şu adımları izleyin:
Azure portalında işlev uygulamanızı açın. İşlev uygulamasının etkin bir şekilde çalıştığından emin olun.
İşlev uygulamanızda, tüm kaynaklara izin verilsin diye Çıkış Noktaları Arası Kaynak Paylaşımı 'nı (CORS) ayarlayın. Aşağıdaki adımları izleyin:
HTTPS isteklerindeki özellik değerlerine erişme
Webhook tabanlı işlevler, giriş olarak HTTPS isteklerini kabul edebilir ve bu istekleri diğer işlevlere iletebilir.
Örneğin, Azure Logic Apps'te DateTime değerlerini dönüştüren işlevler olsa da, işleve geçen bir istek nesnesindeki özelliğe erişebilir ve bu özellik değerinde işlemler gerçekleştirebilirsiniz.
Bu temel örnek JavaScript işlevi, nesnelerdeki özelliklere erişmek için nokta (.) işlecini kullanır:
function convertToDateString(request, response){
var data = request.body;
response = {
body: data.date.ToDateString();
}
}
Aşağıdaki adımlarda bu işlevde neler olduğu açıklanmaktadır:
işlevi bir
datadeğişken oluşturur ve nesnedekibodyrequestnesnesini değişkenine atar. Fonksiyon,bodynesnesindekirequestnesnesine başvurmak için nokta (.) işlecini kullanır.var data = request.body;İşlev artık
dateözelliğinedatadeğişkeni aracılığıyla erişebilir.İşlev, işlevi çağırarak özellik değerini DateTime türünden DateString türüne
ToDateString()dönüştürür. İşlev, işlevinbodyyanıtında özelliği aracılığıyla sonucu döndürür:body: data.date.ToDateString();İşlevinizi Azure İşlevleri'nde oluşturduktan sonra, iş akışınıza bir Azure işlevi eklemek için adımları izleyin.
URI parametrelerini bir işleve geçirme
İşlevinize bir URI parametresi geçirmek için, işlevin uç nokta URL'sindeki sorgu parametrelerini kullanın.
İşlev bilgileri bölmesinin açık olduğu iş akışı tasarımcısında Gelişmiş parametreler listesinde Sorgular'ı seçin.
Parametre girişini anahtar-değer çiftleri olarak girebileceğiniz bir tablo görüntülenir.
Parametreniz için anahtar-değer çiftini girin, örneğin:
İş akışınıza işlev ekleme (Tüketim + Standart iş akışları)
bir Azure işlevini iş akışınızdan çağırmak için bu işlevi iş akışı tasarımcısındaki diğer eylemler gibi ekleyin.
Azure portalında Tüketim mantıksal uygulama kaynağınızı açın. İş akışını tasarımcıda açın.
Tasarımcıda, Azure işlevi seçin adlı Azure İşlevleri eylemini eklemek için genel adımları izleyin.
Eylem ekle bölmesinde şu adımları izleyin:
İşlev uygulamaları listesinden işlev uygulamanızı seçin.
İşlevi seçin ve ardından Eylem ekle'yi seçin, örneğin:
İşlevin bilgi kutusu göründükten sonra şu adımları izleyin:
İstek Gövdesi için, işlevinizin girdisini girin; javascript nesne gösterimi (JSON) nesnesi biçimini kullanmalıdır, örneğin:
{"context": <selected-input> }Bu giriş, iş akışınızın işlevinize gönderdiği bağlam nesnesi yükü veya iletisidir.
İş akışındaki önceki adımlardan çıkış değerlerini seçmek için , İstek Gövdesi kutusunun içini seçin ve ardından dinamik içerik listesini (şimşek simgesi) açan seçeneği belirleyin.
İfade oluşturmak için , İstek Gövdesi kutusunun içini seçin ve ardından ifade düzenleyicisini (işlev simgesi) açan seçeneği belirleyin.
Aşağıdaki örnek,
contentözniteliğine ve e-posta tetikleyicisinden From çıkış değerine sahip bir JSON nesnesini istek gövdesi olarak belirtir:
Bu durumda, bağlam nesnesi dize olarak dönüştürülmez. Nesnenin içeriği doğrudan JSON yüküne eklenir. Aşağıdaki görüntüde tamamlanmış örnek gösterilmektedir:
Dize, JSON nesnesi veya JSON dizisi geçiren bir JSON belirteci dışında bir bağlam nesnesi girerseniz bir hata alırsınız. Ancak, belirteci tırnak işareti (" ") içine alarak bağlam nesnesini dize olarak dönüştürebilirsiniz. Örneğin, Alma Zamanı çıkış değerini kullanmak istiyorsanız:
Kullanılacak yöntem, istek üst bilgileri, sorgu parametreleri veya kimlik doğrulaması gibi diğer bilgileri girmek için Gelişmiş parametreler listesini açın ve istediğiniz parametreleri seçin.
Kimlik doğrulaması için seçenekleriniz seçtiğiniz işleve göre farklılık gösterir. Daha fazla bilgi için bkz . İşlevler için kimlik doğrulamasını etkinleştirme.
Azure işlev çağrıları için kimlik doğrulamasını etkinleştirme (yalnızca tüketim iş akışları)
Tüketim iş akışınız, Azure işlevine yapılan çağrının kimliğini doğrulamak ve Microsoft Entra Id ile korunan kaynaklara erişmek için el ile oluşturulmuş, kullanıcı tarafından atanan yönetilen bir kimlik kullanabilir. Yönetilen kimlik, oturum açmanıza ve kimlik bilgileri veya gizli anahtarlar sağlamanıza gerek kalmadan erişimi kimlik doğrular. Azure bu kimliği sizin için yönetir ve kimlik bilgilerinizi veya gizli anahtarlarınızı yönetmeniz ya da düzenli olarak güncellemeniz gerekmediği için kimlik bilgilerinizin güvende kalmasına yardımcı olur.
Bu senaryo için mantıksal uygulama kaynak düzeyinde kullanıcı tarafından atanan bir yönetilen kimlik ayarlamanız gerekir. İş akışınızın Azure işlevine yaptığı çağrı, kimlik doğrulaması için bu yönetilen kimliği kullanır.
Daha fazla bilgi için bakınız:
İşlev uygulamanızı ve işlevinizi Tüketim tabanlı mantıksal uygulama kaynağınız için yönetilen kimliği kullanacak şekilde ayarlamak için şu genel adımları izleyin:
Mantıksal uygulama kaynağınız için yönetilen kimliği etkinleştirin ve ayarlayın.
İşlevinizi anonim kimlik doğrulaması için ayarlayın.
Microsoft Entra kimlik doğrulamasını ayarlamak için gerekli değerleri bulun.
İşlev uygulamanız için bir uygulama kaydı oluşturun.
İşlevinizi anonim kimlik doğrulaması için ayarlama (Yalnızca tüketim iş akışları)
İşlevinizin Tüketim mantıksal uygulama kaynağınız için yönetilen kimliği kullanması için işlevinizin kimlik doğrulama düzeyini anonim olarak ayarlayın. Aksi takdirde, iş akışınız bir BadRequest hatası oluşturur.
Azure portalında işlev uygulamanızı açın.
Aşağıdaki adımlarda FabrikamFunctionApp adlı örnek bir işlev uygulaması kullanılır.
İşlev uygulaması kenar çubuğundaki Geliştirme Araçları'nın altında Gelişmiş Araçlar>Git'i seçin.
Azure portalından çıkmak istediğinizi onaylamak ve işlev uygulamanızın web sitesi URL'sine gitmek için Devam'ı seçin.
Kudu Hizmetleri sayfası açıldıktan sonra, Kudu web sitesinin başlık çubuğunda, Hata ayıklama konsolumenüsünden CMD'yi seçin.
Sonraki sayfada, klasör listesindenwwwroot>your-function> seçin.
Aşağıdaki adımlarda FabrikamAzureFunction adlı örnek bir işlev kullanılır.
Düzenlemek üzere function.json dosyasını açın.
Bir
bindingsnesnesindeauthLevelözelliğinin var olup olmadığını onaylayın.Özelliği varsa özellik değerini olarak
anonymousayarlayın. Aksi takdirde özelliğini ekleyin ve değerini ayarlayın.bitirdiğinizde düzenleyici araç çubuğunda Kaydet'i seçin. Sonraki bölüme geçin.
Microsoft Entra kimlik doğrulamasını ayarlamak için gerekli değerleri bulun (yalnızca tüketim iş akışları)
İşlev uygulamanızı yönetilen kimliği ve Microsoft Entra kimlik doğrulamasını kullanacak şekilde ayarlayabilmeniz için önce aşağıdaki üst düzey adımları izleyerek belirli kimlikleri bulup kaydetmeniz gerekir:
Yönetilen kimliğinizin nesne kimliğini bulun.
Yönetilen kimliğiniz ile ilişkili Kurumsal uygulamanın uygulama kimliğini bulun.
Microsoft Entra kiracınızın kiracı kimliğini bulma
Get-AzContext adlı PowerShell komutunu çalıştırın veya Azure portalında şu adımları izleyin:
Azure portalında Microsoft Entra kiracınızı açın.
Bu kılavuzda örnek kiracı olarak Fabrikam kullanılır.
Kiracı kenar çubuğunda Genel Bakış'ı seçin.
Kiracı kimliğinizi daha sonra kullanmak üzere kopyalayın ve kaydedin, örneğin:
Yönetilen kimliğinizin nesne kimliğini bulma
Tüketim mantıksal uygulaması kaynağınız için kullanıcı tarafından atanan yönetilen kimliği ayarladıktan sonra, yönetilen kimliğin nesne kimliğini bulun. Microsoft Entra kiracınızda ilişkili Kurumsal uygulamayı bulmak için bu kimliği kullanırsınız.
Mantıksal uygulama kenar çubuğunda Ayarlar'ı genişletin, Kimlik'i seçin ve ardından Kullanıcı tarafından atanan sekmesini seçin.
Kullanıcı tarafından atanan sekmesinde yönetilen kimliği seçin:
Yönetilen Kimlik sayfasında, kimliğin Nesne (asıl) kimlik değerini kopyalayın:
Yönetilen kimliğiniz ile ilişkilendirilmiş Azure Kurumsal uygulamasının uygulama kimliğini bulma
Tüketim mantıksal uygulama kaynağınız için yönetilen kimliği etkinleştirdikten sonra, Azure otomatik olarak aynı ada sahip ilişkili bir Azure Kurumsal uygulaması oluşturur.
İlişkili Kurumsal uygulamayı bulmanız ve uygulama kimliğini kopyalamanız gerekir. Uygulama kaydı oluşturarak işlev uygulamanız için kimlik sağlayıcısı eklemek için bu uygulama kimliğini kullanırsınız. Aşağıdaki adımları izleyin:
Kiracı kenar çubuğunda Yönet'i genişletin ve kurumsal uygulamalar'ı seçin.
Tüm uygulamalar sayfasındaki arama kutusuna yönetilen kimliğinizin nesne kimliğini girin. Sonuçlardan eşleşen kurumsal uygulamayı bulun ve Uygulama Kimliği değerini kopyalayın:
Kopyalanan uygulama kimliği değerini kullanarak işlev uygulamanıza bir kimlik sağlayıcısı eklemek için sonraki bölüme geçin.
İşlev uygulamanız için kimlik sağlayıcısı ekleme (yalnızca tüketim iş akışları)
Kiracı kimliğini ve uygulama kimliğini aldıktan sonra, bir kimlik sağlayıcısı ekleyerek ve uygulama kaydı oluşturarak işlev uygulamanızı Microsoft Entra kimlik doğrulamasını kullanacak şekilde ayarlayın:
İşlev uygulaması kenar çubuğunda Ayarlar'ı genişletin, Kimlik doğrulaması'nı ve ardından Kimlik sağlayıcısı ekle'yi seçin, örneğin:
Kimlik sağlayıcısı ekle sayfasındaki Temel bilgiler sekmesinde, Kimlik sağlayıcısılistesinden Microsoft'u seçin.
Uygulamakaydı'nın altında, Uygulama kayıt türü için Mevcut bir uygulama kaydının ayrıntılarını sağlayın'ı seçin ve aşağıdaki tabloda açıklandığı gibi daha önce kaydettiğiniz değerleri girin:
Sürümünüz artık aşağıdaki örneğe benzer:
Fonksiyon uygulamanızı ilk kez bir kimlik sağlayıcısıyla ayarlıyorsanız, App Service kimlik doğrulama ayarları bölümü de görüntülenir. Bu seçenekler işlev uygulamanızın kimliği doğrulanmamış isteklere nasıl yanıt vereceğini belirler. Varsayılan seçim, tüm istekleri yeni kimlik sağlayıcısıyla oturum açmak için yeniden yönlendirir. Bu davranışı şimdi özelleştirebilir veya daha sonra ana Kimlik Doğrulama sayfasından Kimlik Doğrulama ayarları'nın yanındaki Düzenle'yi seçerek bu ayarları ayarlayabilirsiniz. Bu seçenekler hakkında daha fazla bilgi edinmek için bkz . Kimlik doğrulama akışı - Azure App Service ve Azure İşlevleri'nde kimlik doğrulaması ve yetkilendirme.
Aksi takdirde, sonraki adımla devam edin.
Uygulama kaydını oluşturmayı tamamlamak için Ekle'yi seçin.
Kimlik Doğrulama sayfasında kimlik sağlayıcısı ve uygulama kaydının uygulama (istemci) kimliği listelenir. İşlev uygulamanız artık kimlik doğrulaması için bu uygulama kaydını kullanabilir.
Uygulama kaydının Uygulama (istemci) kimliği değerini kopyalayın ve kaydedin.
Bu kimliği iş akışınıza eklediğiniz Azure İşlevleri eyleminde kullanırsınız.
İş akışı tasarımcısına dönün ve Azure İşlevleri eylemini kullanarak yönetilen kimlikle erişimin kimliğini doğrulamak için adımları izleyin.
İşlev eyleminin Audience özelliğine uygulama (istemci) kimliğini girmeyi unutmayın.