Azure İşlevleri güvenliğini sağlama

Azure Uygulaması Hizmeti, işlev uygulamalarınız için barındırma altyapısı sağlar. Bu makalede işlev kodunuzu çalıştırmaya yönelik güvenlik stratejileri ve App Service'in işlevlerinizin güvenliğini sağlamanıza nasıl yardımcı olabileceği açıklanır.

Azure App Service, Azure sanal makineleri (VM' ler), depolama, ağ bağlantıları, web çerçeveleri ve yönetim ve tümleştirme özellikleri dahil olmak üzere platform bileşenlerinin güvenliğini etkin bir şekilde sağlar ve sağlamlaştırmaktadır. App Service, aşağıdakileri sağlamak için sürekli, sıkı uyumluluk denetimlerinden geçer:

Azure'da altyapı ve platform güvenliği hakkında daha fazla bilgi için bkz. Azure Güven Merkezi.

Microsoft bulut güvenliği karşılaştırmasını izleyen bir dizi güvenlik önerisi için bkz. Azure İşlevleri için Azure Güvenlik Temeli.

Sunucusuz işlevlerin güvenli geliştirme, dağıtım ve çalışma planlanması web tabanlı veya bulutta barındırılan tüm uygulamalarla aynı olsa da, sunucusuz uygulamalar büyük olasılıkla geleneksel saldırı çeşitlemelerine karşı savunmasızdır. Sunucusuz altyapıya yönelik olası saldırılar hakkında daha fazla bilgi edinmek için bkz . OWASP İlk 10: Sunucusuz Yorumlama.

Güvenli işlem

Bu bölüm, işlev uygulamanızı mümkün olduğunca güvenli bir şekilde yapılandırma ve çalıştırma konusunda size yol gösterir.

Bulut için Defender

Bulut için Defender, portaldaki işlev uygulamanızla tümleşir. Yapılandırmayla ilgili olası güvenlik açıklarının hızlı bir değerlendirmesini sağlar. Ayrılmış bir planda çalışan işlev uygulamaları, ek bir maliyetle Defender for Cloud'un gelişmiş güvenlik özelliklerini de kullanabilir. Daha fazla bilgi için Defender for App Service başlıklı bölüme bakın.

Kayıt ve İzleme

Saldırıları algılamanın bir yolu etkinlik izleme ve günlüğe kaydetme analizidir. İşlevler, fonksiyon uygulamanız için günlük, performans ve hata verilerini toplamak amacıyla Application Insights ile entegre olur. Application Insights, performans anomalilerini otomatik olarak algılar ve sorunları tanılamanıza ve işlevlerinizin nasıl kullanıldığını anlamanıza yardımcı olacak güçlü analiz araçları içerir. Daha fazla bilgi için bkz. Azure İşlevlerini İzleme.

İşlevler, daha kolay analiz için işlev uygulama günlüklerini sistem olaylarıyla birleştirmenizi sağlamak için Azure İzleyici Günlükleri ile de tümleştirilir. Tanılama ayarlarını kullanarak, işlevlerinize yönelik platform günlükleri ve ölçümlerinin istediğiniz hedefe (örneğin, Logs Analytics çalışma alanı) yayın akışı şeklinde dışa aktarılmasını yapılandırabilirsiniz. Daha fazla bilgi için bkz. Azure İzleyici Günlükleri ile Azure İşlevleri'ni İzleme.

Kurumsal düzeyde tehdit algılama ve yanıt otomasyonu için günlüklerinizi ve olaylarınızı bir Logs Analytics çalışma alanına akışla aktarabilirsiniz. Daha sonra Microsoft Sentinel'i bu çalışma alanına bağlayabilirsiniz. Daha fazla bilgi için bkz. Microsoft Sentinel nedir?

Gözlemlenebilirlik hakkında daha fazla güvenlik önerisi için bkz. Azure İşlevleri için Azure güvenlik temeli.

HTTP uç noktalarının güvenliğini sağlama

Genel kullanıma sunduğun HTTP uç noktaları, kötü amaçlı aktörler için bir saldırı vektörü sağlar. HTTP uç noktalarınızın güvenliğini sağlarken katmanlı bir güvenlik yaklaşımı kullanın. Genel kullanıma sunulan HTTP uç noktalarının en temelden en güvenli ve kısıtlayıcıya doğru sıralanmış güvenlik açığını azaltmak için şu teknikleri kullanın:

HTTPS gerektirir

varsayılan olarak, istemciler HTTP veya HTTPS kullanarak işlev uç noktalarına bağlanabilir. HEM şifrelenmiş hem de kimliği doğrulanmış güvenli bir bağlantı sağlamak için TLS protokollerini kullandığından HTTP'yi HTTPS'ye yeniden yönlendirin. Nasıl yapılacağını öğrenmek için bkz . HTTPS'yi zorunlu kılma.

HTTPS'ye ihtiyacınız olduğunda, en son TLS sürümünü de gerekli kılar. Nasıl yapılacağını öğrenmek için bkz . TLS sürümlerini zorunlu kılma.

Daha fazla bilgi için bkz . Güvenli bağlantılar (TLS).

İşlev erişim anahtarları

İşlevler, işlev uç noktalarınıza erişmeyi zorlaştırmak için anahtarları kullanır. HTTP ile tetiklenen bir işlevde HTTP erişim düzeyini olarak anonymousayarlamadığınız sürece, istekler istekte bir erişim anahtarı içermelidir. Daha fazla bilgi için bkz. Azure İşlevleri'da erişim anahtarlarıyla çalışma.

Erişim anahtarları istenmeyen erişimi önlemeye yardımcı olsa da işlev uç noktalarınızı gerçekten güvenli hale getirmenin tek yolu, işlevlerinize erişen istemcilerin pozitif kimlik doğrulamasını uygulamaktır. Daha sonra kimlik temelinde yetkilendirme kararları alabilirsiniz.

En yüksek güvenlik düzeyi için , özel uç noktaları kullanarak veya yalıtılarak çalıştırarak bir sanal ağ içindeki tüm uygulama mimarisinin güvenliğini sağlayın.

Yönetim uç noktalarını devre dışı bırakma

İşlev uygulamaları, yönetim uç noktalarına /admin yolunun altında hizmet verebilir. Konak durumu bilgilerini alma ve test çağrıları gerçekleştirme gibi işlemler için bu uç noktaları kullanabilirsiniz. Kullanıma sunulduğunda, bu uç noktalara yönelik istekler uygulamanın ana anahtarını içermelidir. Yönetim işlemlerine Azure RBAC sunan Azure Resource Manager Microsoft.Web/sites API'sini kullanarak da erişebilirsiniz. /admin uç noktalarını devre dışı bırakmak için, uygulamanızdaki site özelliğini functionsRuntimeAdminIsolationEnabled olarak true ayarlayın. Daha fazla bilgi için bkz: functionsRuntimeAdminIsolationEnabled özellik referansı.

App Service Kimlik Doğrulamasını/Yetkilendirmesini Etkinleştirme

App Service platformu, istemcilerin kimliğini doğrulamak için Microsoft Entra Id ve Microsoft dışı birkaç kimlik sağlayıcısı kullanmanıza olanak tanır. İşlevleriniz için özel yetkilendirme kuralları uygulamak için bu stratejiyi kullanın. İşlev kodunuzdan kullanıcı bilgileriyle çalışabilirsiniz. Daha fazla bilgi için bkz. Azure App Service'te kimlik doğrulaması ve yetkilendirme ve istemci kimlikleriyle çalışma.

İsteklerin kimliğini doğrulamak için Azure API Management'ı (APIM) kullanma

APIM, gelen istekler için çeşitli API güvenlik seçenekleri sağlar. Daha fazla bilgi için bkz. API Management kimlik doğrulama ilkeleri. APIM kullanarak işlev uygulamanızı yalnızca APIM örneğinizin IP adresinden gelen istekleri kabul etmek üzere yapılandırabilirsiniz. Daha fazla bilgi için bkz. IP adresi kısıtlamaları.

İzinler

Tüm uygulama veya hizmetlerde olduğu gibi işlev uygulamanızı mümkün olan en düşük izinlerle çalıştırın.

Kullanıcı yönetimi izinleri

İşlevler, yerleşik Azure rol tabanlı erişim denetimini (Azure RBAC) destekler. İşlevler tarafından desteklenen Azure rolleri Katkıda Bulunan, Sahip ve Okuyucu'dur.

İzinler işlev uygulaması düzeyinde geçerli olur. Uygulama düzeyindeki görevlerin çoğunu gerçekleştirmek için Katkıda Bulunan rolü gereklidir. Application Insights'ta günlük verilerini görüntülemek için İzleme Okuyucusu izniyle birlikte Katkıda Bulunan rolüne de ihtiyacınız vardır. Bir işlev uygulamasını yalnızca Sahip rolü silebilir.

İşlevleri ayrıcalıklara göre düzenle

Uygulama ayarlarında depolanan bağlantı dizeleri ve diğer kimlik bilgileri, işlev uygulamasındaki tüm işlevlere ilişkili kaynakta aynı izin kümesini verir. Bu kimlik bilgilerini kullanmayan işlevleri ayrı bir işlev uygulamasına taşıyarak belirli kimlik bilgilerine erişimi olan işlev sayısını en aza indirmeyi göz önünde bulundurun. Farklı işlev uygulamalarındaki işlevler arasında veri geçirmek için her zaman işlev zinciri gibi teknikleri kullanabilirsiniz.

Yönetilen kimlikler

Microsoft Entra Id'den yönetilen kimlik, uygulamanızın Azure Key Vault gibi diğer Microsoft Entra korumalı kaynaklara kolayca erişmesini sağlar. Azure platformu, kimlik yönetimini sağladığı için gizli anahtarları sağlamanız veya döndürmeniz gerekmez. Microsoft Entra Id'deki yönetilen kimlikler hakkında daha fazla bilgi için bkz . Azure kaynakları için yönetilen kimlikler.

Uygulamanıza iki tür kimlik vekleyebilirsiniz:

  • Sistem tarafından atanan bir kimlik uygulamaya bağlıdır ve uygulama silinirse silinir. Bir uygulama yalnızca bir sistem tarafından atanan kimliğe sahip olabilir.
  • Kullanıcı tarafından atanan kimlik ise uygulamanıza atanabilen tek başına bir Azure kaynağıdır. Bir uygulamanın kullanıcı tarafından atanan birden çok kimliği olabilir. Kullanıcı tarafından atanan bir kimlik, iki App Service uygulaması gibi birden çok Azure kaynağına atanabilir.

Bazı tetikleyicilerden ve bağlamalardan gelen bağlantılar için gizli diziler yerine yönetilen kimlikleri kullanın. Bkz. Kimlik tabanlı bağlantılar.

Daha fazla bilgi için bkz. App Service ve Azure İşlevleri için yönetilen kimlikleri kullanma.

CORS erişimini kısıtlama

Çıkış noktaları arası kaynak paylaşımı (CORS), başka bir etki alanında çalışan web uygulamalarının HTTP tetikleyici uç noktalarınıza istekte bulunmalarına izin vermenin bir yoludur. App Service, HTTP isteklerinde gerekli CORS üst bilgilerini işlemek için yerleşik destek sağlar. CORS kuralları bir işlev uygulaması düzeyinde tanımlanır.

Uç noktanıza tüm sitelerin erişmesine izin veren bir joker karakter kullanmak caziptir. Bu yaklaşım, siteler arası betik saldırılarını önlemeye yardımcı olan CORS'nin amacını alt eder. Bunun yerine, uç noktanıza erişmesi gereken her web uygulamasının etki alanı için ayrı bir CORS girdisi ekleyin.

Gizli bilgileri yönetme

Kodunuzu çalıştırmak için gereken çeşitli hizmetlere ve kaynaklara bağlanmak için işlev uygulamalarının bağlantı dizeleri ve hizmet anahtarları gibi gizli dizilere erişmesi gerekir. Bu bölüm, işlevleriniz için gerekli olan gizli bilgilerin nasıl saklanacağını açıklar.

Gizli bilgileri hiçbir zaman fonksiyon kodunuzda depolamayın.

Uygulama ayarları

Varsayılan olarak, işlev uygulamanız tarafından kullanılan bağlantı dizelerini ve gizli dizileri ve bağlamaları uygulama ayarları olarak depolayın. Bu yaklaşım, bu kimlik bilgilerini hem işlev kodunuz hem de işlev tarafından kullanılan çeşitli bağlamalar için kullanılabilir hale getirir. Gerçek olan gizli bilgiyi almak için uygulama ayarı (anahtar) adını kullanın.

Örneğin, her işlev uygulaması, çalışma zamanının kullandığı ilişkili bir depolama hesabı gerektirir. Varsayılan olarak, bu depolama hesabına bağlantıyı adlı AzureWebJobsStoragebir uygulama ayarında depolarsınız.

Azure, uygulama ayarlarını ve bağlantı dizelerini şifreler. Uygulama ayarları ve bağlantı dizelerinin şifresi yalnızca uygulama başlatıldığında uygulamanızın işlem belleğine eklenmeden önce çözülür. Şifreleme anahtarları düzenli olarak döndürülür. Gizli bilgilerinizi güvenli bir şekilde depolamayı tercih ediyorsanız, uygulama ayarlarına Azure Key Vault gizli anahtarlarına referanslar verin.

Yerel bilgisayarınızda işlevler geliştirirken, ayarları dosyada local.settings.json varsayılan olarak şifreleyebilirsiniz. Daha fazla bilgi için bkz . Yerel ayarlar dosyasını şifreleme.

Key Vault referansları

Uygulama ayarları çoğu işlev için yeterli olsa da, aynı gizli dizileri birden çok hizmette paylaşmak isteyebilirsiniz. Bu durumda, gizli dizilerin yedekli depolanması daha olası güvenlik açıklarına neden olur. Daha güvenli bir yaklaşım, merkezi bir gizli depolama hizmeti kullanmak ve gizli bilgilerin kendisi yerine bu hizmete referanslar kullanmaktır.

Azure Key Vault , erişim ilkeleri ve denetim geçmişi üzerinde tam denetime sahip merkezi gizli dizi yönetimi sağlayan bir hizmettir. ** Uygulama ayarlarınızda bir bağlantı dizesi veya anahtarın yerine bir Key Vault başvurusu kullanabilirsiniz. Daha fazla bilgi için, App Service ve Azure İşlevleri için Key Vault başvurularını kullanma'ya bakın.

Kimlik tabanlı bağlantılar

Bazı kaynaklarla bağlantı kurmak için gizli bilgiler yerine kimlikleri kullanın. Bu yaklaşım, gizli bilgi yönetimi gerektirmeme avantajına sahiptir ve daha ayrıntılı erişim kontrolü ve izleme sağlar.

Microsoft Entra kimlik doğrulamasını destekleyen Azure hizmetlerine bağlantı oluşturan kod yazdığınızda gizli dizi veya bağlantı dizesi yerine kimlik kullanabilirsiniz. Her iki bağlantı yönteminin ayrıntıları her hizmetin belgelerinde ele alınmıştır.

Kimlik tabanlı bağlantıları kullanarak hizmetlere erişmek için bazı Azure İşlevleri bağlama uzantılarını yapılandırabilirsiniz. Daha fazla bilgi için bkz . Kimlik tabanlı bağlantı yapılandırma.

Kullanım kotalarını ayarlama

Tüketim planında çalışan işlevler için kullanım kotası ayarlamayı göz önünde bulundurun. İşlev uygulamanızdaki işlevlerin toplam yürütülmesi için günlük GB saniye sınırı ayarladığınızda, sınıra ulaşıldığında yürütme durdurulur. Bu yaklaşım, işlevlerinizi yürüten kötü amaçlı kodlara karşı korunmaya yardımcı olabilir. İşlevlerinizin tüketimini tahmin etmeyi öğrenmek için bkz . Tüketim planı maliyetlerini tahmin etme.

Veri doğrulaması

İşlevleriniz tarafından kullanılan tetikleyiciler ve bağlamalar fazladan veri doğrulaması sağlamaz. Kodunuz bir tetikleyiciden veya giriş bağlamasından alınan tüm verileri doğrulamalıdır. Yukarı akış hizmetinin güvenliği aşılırsa, doğrulanmamış girişlerin işlevlerinize akmasını istemezsiniz. Örneğin, işleviniz bir Azure Depolama kuyruğundaki verileri ilişkisel veritabanında depolarsa, SQL ekleme saldırılarından kaçınmak için verileri doğrulamanız ve komutlarınızı parametreleştirmeniz gerekir.

İşlevinize gelen verilerin zaten doğrulandığını veya temizlendiğini varsaymayın. Çıkış bağlamalarına yazılan verilerin geçerli olduğunu doğrulamak da iyi bir fikirdir.

Hataları ele al

Temel görünse de, işlevlerinizde iyi bir hata işleme yazmanız önemlidir. İşlenmeyen hatalar hosta kadar yükselir ve çalışma zamanı bu hataları işler. Farklı bağlamalar hataların işlenmesini farklı şekilde işler. Daha fazla bilgi için bkz. Azure İşlevleri hata işleme.

Uzaktan hata ayıklamayı devre dışı bırakma

İşlevlerinizde etkin bir şekilde hata ayıkladığınız durumlar dışında uzaktan hata ayıklamanın devre dışı bırakıldığından emin olun. Uzaktan hata ayıklamayı portaldaki işlev uygulamanızın Yapılandırma'nın Genel Ayarlar sekmesinde devre dışı bırakabilirsiniz.

CORS erişimini kısıtlama

Azure İşlevleri çıkış noktaları arası kaynak paylaşımını (CORS) destekler. CORS, portalda ve Azure CLI aracılığıyla yapılandırılır. CORS izin verilen çıkış noktaları listesi, işlev uygulaması düzeyinde geçerlidir. CORS etkinleştirildiğinde yanıtlar Access-Control-Allow-Origin üst bilgisini içerir. Daha fazla bilgi için bkz. Çıkış noktaları arası kaynak paylaşma.

İzin verilen çıkış noktaları listenizde joker karakterler kullanmayın. Bunun yerine, istekleri almayı beklediğiniz belirli etki alanlarını listeleyin.

Şifrelenmiş verileri depolama

Azure Depolama, bir depolama hesabındaki tüm verileri hareketsiz haldeyken şifreler. Daha fazla bilgi için Durağan veriler için Azure Depolama şifrelemesi sayfasına bakın.

Varsayılan olarak, veriler Microsoft tarafından yönetilen anahtarlarla şifrelenir. Şifreleme anahtarları üzerinde daha fazla denetim için blob ve dosya verilerinin şifrelenmesini sağlamak için müşteri tarafından yönetilen anahtarlar sağlayabilirsiniz. Depolama hesabına erişebilmek için bu anahtarların İşlevler için Azure Key Vault'ta bulunması gerekir. Daha fazla bilgi edinmek için Müşteri tarafından yönetilen anahtarları kullanarak bekleyen uygulama verilerini şifreleme bölümüne bakın.

İşlev uygulaması genellikle diğer kaynaklara bağlıdır, bu nedenle uygulamanın güvenliğini sağlamanın bir kısmı bu dış kaynakların güvenliğini sağlamaktır. En azından çoğu işlev uygulaması Application Insights'a ve Azure Depolama'ya bağımlılık içerir. Bu kaynakların güvenliğini sağlama yönergeleri için Azure İzleyici için Azure güvenlik temeline ve Depolama için Azure güvenlik temeline başvurun.

Önemli

Depolama hesabı, bazen uygulama kodunun kendisi de dahil olmak üzere önemli uygulama verilerini depolamak için kullanılır. Diğer uygulama ve kullanıcılardan depolama hesabına erişimi sınırlamanız gerekir.

Ayrıca, uygulama mantığınızın bağlı olduğu tüm kaynak türleri için hem tetikleyiciler hem de bağlamalar olarak ve işlev kodunuzla ilgili yönergelere başvurmalısınız.

Güvenli dağıtım

Azure İşlevleri araç tümleştirmesi, yerel işlev proje kodunu Azure'da yayımlamayı kolaylaştırır. Azure İşlevleri topolojisi için güvenlik dikkate alınırken dağıtımın nasıl çalıştığını anlamak önemlidir.

Dağıtım kimlik bilgileri

App Service dağıtımları için bir dizi dağıtım kimlik bilgisi gerekir. İşlev uygulaması dağıtımlarınızın güvenliğini sağlamak için bu dağıtım kimlik bilgilerini kullanırsınız. App Service platformu, dağıtım kimlik bilgilerini yönetir ve dinlenme halindeyken şifreler.

İki tür dağıtım kimlik bilgisi vardır:

  • Kullanıcı kapsamı veya kullanıcı düzeyi kimlik bilgileri, kullanıcının tüm Azure hesabı için bir dağıtım kimlik bilgileri kümesi sağlar. Rol tabanlı erişim denetimi (RBAC) veya ortak yönetici izinleri aracılığıyla uygulama erişimi verilen bir kullanıcı, bu izinlere sahip olduğu sürece kullanıcı düzeyinde kimlik bilgilerini kullanabilir.

    Azure hesabınızın erişim iznine sahip olduğu herhangi bir abonelikte yerel Git veya FTP/S aracılığıyla App Service'e herhangi bir uygulama dağıtmak için kullanıcı kapsamı kimlik bilgilerinizi kullanabilirsiniz. Bu kimlik bilgilerini diğer Azure kullanıcılarıyla paylaşmazsınız. Kullanıcı kapsamı kimlik bilgilerinizi istediğiniz zaman sıfırlayabilirsiniz.

  • Uygulama kapsamı veya uygulama düzeyi kimlik bilgileri, uygulama başına yalnızca bu uygulamayı dağıtmak için kullanılabilecek bir kimlik bilgileri kümesidir. Bu kimlik bilgileri oluşturma sırasında her uygulama için otomatik olarak oluşturulur ve el ile yapılandırılamaz, ancak parola her zaman sıfırlanabilir.

    Bir kullanıcıya RBAC ile uygulama düzeyinde kimlik bilgilerine erişim izni verilebilmesi için, yerleşik Web Sitesi Katkıda Bulunanı rolü de dahil olmak üzere bir uygulamada en az Katkıda Bulunan düzeyinde izinlere sahip olması gerekir. Okuyucu rolü yayımlayamaz ve bu kimlik bilgilerine erişemez.

Şu anda Key Vault dağıtım kimlik bilgileri için desteklenmemektedir. Dağıtım kimlik bilgilerini yönetme hakkında daha fazla bilgi edinmek için bkz. Azure Uygulaması Hizmeti için dağıtım kimlik bilgilerini yapılandırma.

FTP'yi devre dışı bırakma

Varsayılan olarak, her işlev uygulamasının bir FTP uç noktası etkindir. FTP uç noktasına dağıtım kimlik bilgileri kullanılarak erişilir.

İşlev kodunuzu dağıtmak için FTP önerilmez. FTP dağıtımları el ile gerçekleştirilir ve tetikleyicileri eşitlemenizi gerektirir. Daha fazla bilgi için bkz. FTP dağıtımı.

FTP kullanmadığınızda devre dışı bırakın. Bu ayarı portalda değiştirebilirsiniz. FTP kullanmayı seçerseniz FTPS'yi zorunlu kılın.

Uç noktanın güvenliğini sağlama scm

Her işlev uygulamasının, Gelişmiş Araçlar (Kudu) hizmetinin dağıtımlar ve diğer App Service scm için kullandığı karşılık gelen bir hizmet uç noktası vardır. İşlev uygulamasının scm uç noktası her zaman biçiminde https://<FUNCTION_APP_NAME>.scm.azurewebsites.netbir URL'dir. İşlevlerinizin güvenliğini sağlamak için ağ yalıtımı kullandığınızda, bu uç noktayı da hesaba katmanız gerekir.

Ayrı scm bir uç nokta kullanarak, yalıtılmış veya sanal ağda çalışan işlev uygulamaları için dağıtımları ve diğer Gelişmiş Araçlar işlevlerini denetleyebilirsiniz. Uç nokta hem scm temel kimlik doğrulamasını (dağıtım kimlik bilgilerini kullanarak) hem de Azure portalı kimlik bilgilerinizle çoklu oturum açmayı destekler. Daha fazla bilgi için bkz . Kudu hizmetine erişme.

Sürekli güvenlik doğrulaması

Geliştirme sürecinin her adımında güvenliği göz önünde bulundurmanız gerektiğinden, sürekli dağıtım ortamında güvenlik doğrulamaları uygulamak da mantıklıdır. Bu yaklaşım bazen DevSecOps olarak adlandırılır. Dağıtım işlem hattınız için Azure DevOps kullanarak doğrulamayı dağıtım işlemiyle tümleştirebilirsiniz. Daha fazla bilgi için bkz . Azure Pipelines'ınızın güvenliğini sağlama.

Ağ güvenliği

İşlev uygulamanıza ağ erişimini kısıtlayarak, işlev uç noktalarınıza kimlerin erişebileceğini denetleyebilirsiniz. İşlevler, işlevlerinizin İnternet'e yönlendirilebilir adresleri kullanmadan kaynaklara erişmesini sağlamak veya bir işlev uç noktasına İnternet erişimini kısıtlamak için App Service altyapısını kullanır. Bu ağ seçenekleri hakkında daha fazla bilgi edinmek için bkz. Azure İşlevleri ağ seçenekleri.

Erişim kısıtlamalarını ayarlama

Erişim kısıtlamaları, uygulamanıza gelen trafiği denetlemek için izin verme ve reddetme kuralları listeleri tanımlamanıza olanak tanır. Kurallar öncelik sırasına göre değerlendirilir. Herhangi bir kural tanımlamazsanız uygulamanız herhangi bir adresten gelen trafiği kabul eder. Daha fazla bilgi için bkz Azure Uygulaması Hizmet Erişim Kısıtlamaları.

Depolama hesabının güvenliğini sağlama

İşlev uygulaması oluşturduğunuzda Blob, Kuyruk ve Tablo depolamayı destekleyen genel amaçlı bir Azure Depolama hesabı oluşturmanız veya bu hesaba bağlanmanız gerekir. Bu depolama hesabını, hizmet uç noktaları veya özel uç noktalar tarafından etkinleştirilen erişime sahip bir sanal ağ tarafından güvenliği sağlanan bir hesapla değiştirebilirsiniz. Daha fazla bilgi için bkz. Depolama hesabınızı bir sanal ağ ile kısıtlama.

İşlev uygulamanızı sanal ağa dağıtma

Azure Özel Uç Nokta, Azure Özel Bağlantı destekli bir hizmete özel ve güvenli bir şekilde bağlanmanızı sağlayan ağ arabirimidir. Özel Uç Nokta, sanal ağınızdaki bir özel IP adresini kullanır ve bu sayede hizmeti sanal ağınıza getirir.

Flex Consumption, Elastic Premium ve Dedicated (App Service) planlarında barındırılan işlevleriniz için Özel Uç Nokta'yı kullanabilirsiniz.

Özel Uç Noktalara çağrı yapmak istiyorsanız, DNS aramalarınızın özel uç noktaya çözümlenmesinden emin olmanız gerekir. Bu davranışı aşağıdaki yollardan biriyle zorunlu kılabilirsiniz:

  • Azure DNS özel bölgeleriyle tümleştirin. Sanal ağınızda özel bir DNS sunucusu olmadığında bu işlem otomatik olarak yapılır.
  • Uygulamanız tarafından kullanılan DNS sunucusunda özel uç noktayı yönetin. Özel uç noktayı yönetmek için uç nokta adresini bilmeniz ve ulaşmaya çalıştığınız uç noktaya başvurmak için bir A kaydı kullanmanız gerekir.
  • Kendi DNS sunucunuzu Azure DNS özel bölgelerine iletecek şekilde yapılandırın.

Daha fazla bilgi edinmek için Web Uygulamaları için Özel Uç Noktaları Kullanma sayfasına bakın.

İşlev uygulamanızı yalıtarak dağıtın

Azure Uygulaması Hizmet Ortamı, işlevlerinizin çalıştırıldığı ayrılmış bir barındırma ortamı sağlar. Bu ortamlar, tüm gelen isteklerin kimliğini doğrulamak için kullanabileceğiniz tek bir ön uç ağ geçidi yapılandırmanıza olanak tanır. Daha fazla bilgi için bkz. ILB App Service Ortamınızı Azure Application Gateway ile tümleştirme.

Ağ geçidi hizmeti kullanma

Azure Application Gateway ve Azure Front Door gibi ağ geçidi hizmetlerini kullanarak bir Web Uygulaması Güvenlik Duvarı (WAF) ayarlayabilirsiniz. WAF kuralları, algılanan saldırıları izler veya engeller ve bu da işlevleriniz için ek bir koruma katmanı sağlar. WAF ayarlamak için işlev uygulamanızın bir ASE'de çalışması veya Özel Uç Noktaları (önizleme) kullanması gerekir. Daha fazla bilgi için bkz. Özel uç noktaları kullanma.

Sonraki adımlar