PaaS dağıtımlarının güvenliğini sağlama

Bu makalede, aşağıdakilere yardımcı olacak bilgiler sağlanır:

  • Uygulamaları bulutta barındırmanın güvenlik avantajlarını anlama
  • Hizmet olarak platform (PaaS) ile diğer bulut hizmeti modellerinin güvenlik avantajlarını değerlendirme
  • Güvenlik odağını ağ merkezli bir yaklaşımdan kimlik odaklı çevre güvenliği yaklaşımına değiştirme
  • Genel PaaS güvenlik en iyi yöntemleri önerilerini uygulama

Azure'da güvenli uygulamalar geliştirme, bulut için uygulama geliştirirken yazılım geliştirme yaşam döngüsünün her aşamasında göz önünde bulundurmanız gereken güvenlik sorularına ve denetimlerine yönelik genel bir kılavuzdur.

Bulut güvenliği avantajları

Siz ve Microsoft arasındaki sorumluluk paylaşımını anlamak önemlidir. Şirket içinde yığının tamamı sizindir, ancak buluta geçiş sırasında Bazı sorumluluklar Microsoft'a aktarılır.

Bulutta olmanın güvenlik avantajları vardır. Şirket içi bir ortamda, kuruluşların büyük olasılıkla karşılanmamış sorumlulukları ve güvenliğe yatırım yapmak için sınırlı kaynakları vardır ve bu da saldırganların tüm katmanlardaki güvenlik açıklarından yararlanabileceği bir ortam oluşturur.

Kuruluşlar, bir sağlayıcının bulut tabanlı güvenlik özelliklerini ve bulut zekasını kullanarak tehdit algılama ve yanıt sürelerini iyileştirebilir. Kuruluşlar, sorumlulukları bulut sağlayıcısına kaydırarak güvenlik kaynaklarını ve bütçeyi diğer iş önceliklerine yeniden ayırmalarını sağlayan daha fazla güvenlik kapsamı elde edebilir.

PaaS bulut hizmeti modelinin güvenlik avantajları

Şimdi Azure PaaS dağıtımının şirket içiyle karşı karşıya olan güvenlik avantajlarına göz atalım.

PaaS'ın güvenlik avantajları

Yığının alt kısmından başlayarak fiziksel altyapı olan Microsoft, yaygın riskleri ve sorumlulukları azaltır. Microsoft bulutu Microsoft tarafından sürekli izlendiğinden, saldırmak zordur. Bir saldırganın Hedef olarak Microsoft bulutunu takip etmek mantıklı değildir. Saldırganın çok fazla parası ve kaynağı olmadığı sürece, saldırganın başka bir hedefe geçme olasılığı yüksektir.

Yığının ortasında, PaaS dağıtımı ile şirket içi arasında bir fark yoktur. Uygulama katmanında, hesap ve erişim yönetimi katmanında benzer risklere sahip olursunuz. Bu makalenin sonraki adımlar bölümünde, bu riskleri ortadan kaldırmaya veya en aza indirmeye yönelik en iyi yöntemler konusunda size yol göstereceğiz.

Yığının en üstünde, veri idaresi ve hak yönetimi, anahtar yönetimi tarafından azaltılabilir tek bir risk alırsınız. (Anahtar yönetimi en iyi yöntemler kapsamındadır.) Anahtar yönetimi ek bir sorumluluk olsa da, kaynakları anahtar yönetimine kaydırabilmeniz için paaS dağıtımında artık yönetmeniz gerekmeyen alanlarınız vardır.

Azure platformu ayrıca çeşitli ağ tabanlı teknolojileri kullanarak size güçlü DDoS koruması sağlar. Ancak, her tür ağ tabanlı DDoS koruma yönteminin sınırları bağlantı başına ve veri merkezi başına temelindedir. Büyük DDoS saldırılarının etkisini önlemeye yardımcı olmak için Azure'ın DDoS saldırılarına karşı savunmak üzere hızlı ve otomatik olarak ölçeği genişletmenizi sağlayan temel bulut özelliğinden yararlanabilirsiniz. Önerilen yöntemler makalelerinde bunu nasıl yapabileceğiniz hakkında daha fazla ayrıntıya ineceğiz.

Bulut için Defender zihniyetini modernleştirme

PaaS dağıtımları ile genel güvenlik yaklaşımınızda bir değişiklik olur. Her şeyi kendiniz denetleme gereksiniminden Sorumluluğu Microsoft ile paylaşmaya geçersiniz.

PaaS ile geleneksel şirket içi dağıtımlar arasındaki bir diğer önemli fark, birincil güvenlik çevresini tanımlayan yeni bir görünümdür. Geçmişte, birincil şirket içi güvenlik çevresi ağınızdı ve çoğu şirket içi güvenlik tasarımı ağı birincil güvenlik özeti olarak kullanır. PaaS dağıtımlarında, kimliği birincil güvenlik çevresi olarak değerlendirerek daha iyi hizmet alırsınız.

Birincil güvenlik çevresi olarak kimlik ilkesini benimseme

Bulut bilişimin beş temel özelliğinden biri, ağ odaklı düşünmenin daha az ilgili olmasını sağlayan geniş ağ erişimidir. Bulut bilişimin büyük bir kısmının hedefi, kullanıcıların konumlarından bağımsız olarak kaynaklara erişmesine izin vermektir. Kullanıcıların çoğu için konumları İnternet'te bir yerde olacaktır.

Aşağıdaki şekilde, güvenlik çevresinin bir ağ çevresinden kimlik çevresine nasıl geliştiği gösterilmektedir. Güvenlik, ağınızı savunma konusunda daha az, verilerinizi savunmanın yanı sıra uygulamalarınızın ve kullanıcılarınızın güvenliğini yönetme konusunda daha fazla olur. Önemli fark, güvenliği şirketiniz için önemli olan şeylere daha yakın bir noktaya itmek istemenizdir.

Yeni güvenlik çevresi olarak kimlik

Başlangıçta, Azure PaaS hizmetleri (örneğin, web rolleri ve Azure SQL) çok az geleneksel ağ çevre savunması sağladı veya hiç sağlamadı. Öğenin amacının İnternet'e (web rolü) açıklanması olduğu ve kimlik doğrulamasının yeni çevre (örneğin BLOB veya Azure SQL) sağladığı anlaşılmıştır.

Modern güvenlik uygulamaları, saldırganın ağ çevresini ihlal ettiğini varsayar. Bu nedenle, modern savunma uygulamaları kimliğe geçmiştir. Kuruluşların güçlü kimlik doğrulaması ve yetkilendirme hijyeni (en iyi yöntemler) ile kimlik tabanlı bir güvenlik çevresi oluşturması gerekir.

Ağ çevresi için ilkeler ve desenler onlarca yıldır kullanılabilir. Buna karşılık sektör, kimliği birincil güvenlik çevresi olarak kullanma konusunda nispeten daha az deneyime sahiptir. Bununla birlikte, alanda kanıtlanmış ve neredeyse tüm PaaS hizmetleri için geçerli olan bazı genel öneriler sağlamak için yeterli deneyimi birikmiş olduk.

Kimlik çevresini yönetmeye yönelik en iyi yöntemler aşağıdadır.

En iyi yöntem: PaaS dağıtımınızın güvenliğini sağlamak için anahtarlarınızın ve kimlik bilgilerinizin güvenliğini sağlayın. Ayrıntı: Anahtarları ve kimlik bilgilerini kaybetme yaygın bir sorundur. Anahtarların ve gizli dizilerin donanım güvenlik modüllerinde (HSM) depolanabildiği merkezi bir çözüm kullanabilirsiniz. Azure Key Vault , HSM'ler tarafından korunan anahtarları kullanarak kimlik doğrulama anahtarlarını, depolama hesabı anahtarlarını, veri şifreleme anahtarlarını, .pfx dosyalarını ve parolaları şifreleyerek anahtarlarınızı ve gizli dizilerinizi korur.

En iyi yöntem: Kimlik bilgilerini ve diğer gizli dizileri kaynak koduna veya GitHub'a yerleştirmeyin. Ayrıntı: Anahtarlarınızı ve kimlik bilgilerinizi kaybetmekten daha kötü olan tek şey, yetkisiz bir tarafın bunlara erişmesini sağlamaktır. Saldırganlar, GitHub gibi kod depolarında depolanan anahtarları ve gizli dizileri bulmak için bot teknolojilerinden yararlanabilir. Bu ortak kod depolarına anahtar ve gizli dizi koymayın.

En iyi yöntem: Bu VM'leri doğrudan uzaktan yönetmenizi sağlayan bir yönetim arabirimi kullanarak karma PaaS ve IaaS hizmetlerinde VM yönetim arabirimlerinizi koruyun. Ayrıntı: SSH, RDP ve PowerShell uzaktan iletişim gibi uzaktan yönetim protokolleri kullanılabilir. Genel olarak, İnternet'ten VM'lere doğrudan uzaktan erişimi etkinleştirmemenizi öneririz.

Mümkünse, Azure sanal ağında sanal özel ağları kullanma gibi alternatif yaklaşımlar kullanın. Alternatif yaklaşımlar kullanılamıyorsa karmaşık parolalar ve iki öğeli kimlik doğrulaması (Microsoft Entra çok faktörlü kimlik doğrulaması gibi) kullandığınızdan emin olun.

En iyi yöntem: Güçlü kimlik doğrulaması ve yetkilendirme platformları kullanın. Ayrıntı: Özel kullanıcı depoları yerine Microsoft Entra Id'de federasyon kimliklerini kullanın. Federasyon kimliklerini kullandığınızda, platform tabanlı bir yaklaşımdan yararlanıp yetkili kimliklerin yönetimini iş ortaklarınıza devredersiniz. Çalışanlar sonlandırıldığında ve bilgilerin birden çok kimlik ve yetkilendirme sistemi aracılığıyla yansıtılması gerektiğinde, federasyon kimlik yaklaşımı özellikle önemlidir.

Özel kod yerine platform tarafından sağlanan kimlik doğrulama ve yetkilendirme mekanizmalarını kullanın. Bunun nedeni, özel kimlik doğrulama kodu geliştirmenin hataya açık olmasıdır. Geliştiricilerinizin çoğu güvenlik uzmanı değildir ve kimlik doğrulaması ve yetkilendirme konusundaki inceliklerin ve en son gelişmelerin farkında olma olasılığı düşüktür. Ticari kod (örneğin, Microsoft'tan) genellikle kapsamlı güvenlik gözden geçirilir.

İki öğeli kimlik doğrulamasını kullanın. İki öğeli kimlik doğrulaması geçerli kimlik doğrulaması ve yetkilendirme standardıdır çünkü kimlik doğrulamasının kullanıcı adı ve parola türlerindeki güvenlik zayıflıklarını önler. Hem Azure yönetimi (portal/uzak PowerShell) arabirimlerine hem de müşteriye yönelik hizmetlere erişim, Microsoft Entra çok faktörlü kimlik doğrulamasını kullanacak şekilde tasarlanmalı ve yapılandırılmalıdır.

OAuth2 ve Kerberos gibi standart kimlik doğrulama protokollerini kullanın. Bu protokoller kapsamlı bir şekilde eşlenir ve büyük olasılıkla kimlik doğrulaması ve yetkilendirme için platform kitaplıklarınızın bir parçası olarak uygulanır.

Uygulama tasarımı sırasında tehdit modellemeyi kullanma

Microsoft Güvenlik Geliştirme Yaşam Döngüsü , ekiplerin tasarım aşamasında tehdit modelleme adı verilen bir süreçle ilgilenmesi gerektiğini belirtir. Microsoft, bu süreci kolaylaştırmaya yardımcı olmak için SDL Tehdit Modelleme Aracı'nı oluşturmuştur. Uygulama tasarımının modellenmesi ve stride tehditlerinin tüm güven sınırları içinde numaralandırılması, tasarım hatalarını erken saatlerde yakalayabilir.

Aşağıdaki tabloda STRIDE tehditleri listelenmiştir ve Azure özelliklerini kullanan bazı örnek risk azaltmaları verilmiştir. Bu azaltmalar her durumda işe yaramaz.

Tehdit Güvenlik özelliği Olası Azure platformu risk azaltmaları
Spoofing (Kimlik Sahtekarlığı) Kimlik Doğrulaması HTTPS bağlantıları gerektir.
Tampering (Kurcalama) Bütünlük TLS/SSL sertifikalarını doğrulayın.
İnkar İnkar edilemez Azure izleme ve tanılamayı etkinleştirin.
Bilgilerin açığa çıkması Gizlilik Hizmet sertifikalarını kullanarak bekleyen hassas verileri şifreleyin.
Hizmet reddi Kullanılabilirlik Olası hizmet reddi koşulları için performans ölçümlerini izleyin. Bağlantı filtrelerini uygulama.
Ayrıcalık yükseltme Yetkilendirme Privileged Identity Management kullanın.

Azure Uygulaması Hizmeti üzerinde geliştirme

Azure Uygulaması Hizmeti, herhangi bir platform veya cihaz için web ve mobil uygulamalar oluşturmanıza ve bulutta veya şirket içinde her yerden verilere bağlanmanıza olanak tanıyan bir PaaS teklifidir. App Service, daha önce Azure Web Siteleri ve Azure Mobile Services olarak ayrı olarak teslim edilen web ve mobil özellikleri içerir. Ayrıca iş süreçlerini otomatikleştirmek ve bulut API'leri barındırmak için yeni özellikler içerir. App Service, tek bir tümleşik hizmet olarak web, mobil ve tümleştirme senaryolarına zengin bir özellik kümesi getirir.

App Service'i kullanmaya yönelik en iyi yöntemler aşağıdadır.

En iyi yöntem: Microsoft Entra Kimliği aracılığıyla kimlik doğrulaması yapın. Ayrıntı: App Service, kimlik sağlayıcınız için bir OAuth 2.0 hizmeti sağlar. OAuth 2.0, web uygulamaları, masaüstü uygulamaları ve cep telefonları için belirli yetkilendirme akışları sağlarken istemci geliştirici basitliğine odaklanır. Microsoft Entra ID, mobil uygulamalara ve web uygulamalarına erişim yetkisi vermenizi sağlamak için OAuth 2.0 kullanır.

En iyi yöntem: Tanıma ve en az ayrıcalık güvenlik ilkelerine bağlı olarak erişimi kısıtlayın. Ayrıntı: Erişimi kısıtlamak, veri erişimi için güvenlik ilkelerini zorunlu kılmak isteyen kuruluşlar için zorunludur. Belirli bir kapsamdaki kullanıcılara, gruplara ve uygulamalara izin atamak için Azure RBAC kullanabilirsiniz. Kullanıcılara uygulamalara erişim verme hakkında daha fazla bilgi edinmek için bkz . Erişim yönetimini kullanmaya başlama.

En iyi yöntem: Anahtarlarınızı koruyun. Ayrıntı: Azure Key Vault, bulut uygulamalarının ve hizmetlerinin kullandığı şifreleme anahtarlarının ve gizli dizilerinin korunmasına yardımcı olur. Key Vault ile anahtarları ve gizli dizileri (kimlik doğrulama anahtarları, depolama hesabı anahtarları, veri şifreleme anahtarları gibi) şifreleyebilirsiniz. PFX dosyaları ve parolaları), donanım güvenlik modülleri (HSM' ler) tarafından korunan anahtarları kullanarak. Ek güvenlik için HSM'lerde anahtarları içeri aktarabilir veya oluşturabilirsiniz. Daha fazla bilgi edinmek için bkz . Azure Key Vault . Otomatik yenileme ile TLS sertifikalarınızı yönetmek için Key Vault'ı da kullanabilirsiniz.

En iyi yöntem: Gelen kaynak IP adreslerini kısıtlama. Ayrıntı: App Service Ortamı, ağ güvenlik grupları aracılığıyla gelen kaynak IP adreslerini kısıtlamanıza yardımcı olan bir sanal ağ tümleştirme özelliğine sahiptir. Sanal ağlar, Azure kaynaklarını erişimi denetlediğiniz İnternet dışı, yönlendirilebilir bir ağa yerleştirmenizi sağlar. Daha fazla bilgi edinmek için bkz . Uygulamanızı Azure sanal ağıyla tümleştirme.

En iyi yöntem: App Service ortamlarınızın güvenlik durumunu izleyin. Ayrıntı: App Service ortamlarınızı izlemek için Bulut için Microsoft Defender kullanın. Bulut için Defender olası güvenlik açıklarını tanımladığında, gerekli denetimleri yapılandırma işleminde size yol gösteren öneriler oluşturur.

Azure Bulut Hizmetleri

Azure Cloud Services bir PaaS örneğidir. Azure Uygulaması Hizmeti gibi bu teknoloji de ölçeklenebilir, güvenilir ve çalışmaya uygun maliyetli uygulamaları destekleyecek şekilde tasarlanmıştır. App Service'in sanal makinelerde (VM' ler) barındırılıyor olmasıyla aynı şekilde Azure Cloud Services'da da barındırılır. Ancak VM'ler üzerinde daha fazla denetiminiz vardır. Azure Cloud Services kullanan VM'lere kendi yazılımınızı yükleyebilir ve bunlara uzaktan erişebilirsiniz.

Web uygulaması güvenlik duvarı yükleme

Web uygulamaları, bilinen yaygın güvenlik açıklarından yararlanan kötü amaçlı saldırıların giderek daha fazla hedefi olmaktadır. Bu açıklardan yararlanma örnekleri arasında SQL ekleme saldırıları, siteler arası komut dosyası saldırıları yaygındır. Uygulama kodunda bu tür saldırıların önlenmesi zor olabilir ve uygulama topolojisinin birçok katmanında ayrıntılı bakım, düzeltme eki uygulama ve izleme işlemleri gerektirebilir. Merkezi bir web uygulaması güvenlik duvarı, güvenlik yönetimini çok daha kolay hale getirir ve yetkisiz erişim ya da izinsiz giriş tehditlerine karşı uygulama yöneticilerine daha iyi güvence verir. Bir WAF çözümü, bilinen bir güvenlik açığına merkezi bir konumda düzeltme eki uygulayarak güvenlik tehdidine karşı, web uygulamalarının her birinin güvenliğini sağlamaya göre daha hızlı tepki verebilir.

Web Uygulaması Güvenlik Duvarı (WAF), web uygulamalarınız için yaygın açıklardan ve güvenlik açıklarından merkezi koruma sağlar.

DDoS koruması

Uygulama tasarımı en iyi yöntemleriyle birlikte Azure DDoS Koruması, DDoS saldırılarına karşı daha fazla savunma sağlamak için gelişmiş DDoS azaltma özellikleri sağlar. Herhangi bir çevre sanal ağında Azure DDOS Koruması'nı etkinleştirmeniz gerekir.

Uygulamalarınızın performansını izleme

İzleme, uygulamanızın performansını, durumunu ve kullanılabilirliğini belirlemek için veri toplama ve analiz etme işlemidir. Etkili bir izleme stratejisi, uygulamanız için bileşenlerin ayrıntılı işlemini anlamanıza yardımcı olur. Kritik sorunları size bildirerek çalışma sürenizi artırmanıza yardımcı olur, böylece sorun haline gelmeden önce bunları çözebilirsiniz. Ayrıca güvenlikle ilgili olabilecek anomalileri algılamanıza da yardımcı olur.

İster bulutta ister şirket içinde barındırılsın uygulamanızın kullanılabilirliğini, performansını ve kullanımını izlemek için Azure Uygulaması Lication Insights'ı kullanın. Application Insights'ı kullanarak, bir kullanıcının bunları bildirmesini beklemeden uygulamanızdaki hataları hızla belirleyebilir ve tanılayabilirsiniz. Topladığınız bilgilerle, uygulamanızın bakımı ve iyileştirmeleri ile ilgili bilinçli kararlar alabilirsiniz.

Application Insights, topladığı verilerle etkileşim kurmak için kapsamlı araçlara sahiptir. Application Insights, verilerini genel bir depoda saklar. Kusto sorgu diliyle uyarılar, panolar ve derin analiz gibi paylaşılan işlevlerden yararlanabilir.

Güvenlik sızma testi gerçekleştirme

Güvenlik savunmalarını doğrulamak, diğer işlevleri test etmek kadar önemlidir. Sızma testini derleme ve dağıtım sürecinizin standart bir parçası yapın. Dağıtılan uygulamalarda düzenli güvenlik testleri ve güvenlik açığı taraması zamanlayın ve açık bağlantı noktalarını, uç noktaları ve saldırıları izleyin.

Fuzz testi, bu verileri ayrıştıran ve kullanan program arabirimlerine (giriş noktaları) hatalı biçimlendirilmiş giriş verileri sağlayarak program hatalarını (kod hataları) bulmaya yönelik bir yöntemdir.

Sonraki adımlar

Bu makalede, Azure PaaS dağıtımının güvenlik avantajlarına ve bulut uygulamaları için en iyi güvenlik yöntemlerine odaklandık. Ardından, belirli Azure hizmetlerini kullanarak PaaS web ve mobil çözümlerinizin güvenliğini sağlamaya yönelik önerilen yöntemleri öğrenin. Azure Uygulaması Hizmeti, Azure SQL Veritabanı ve Azure Synapse Analytics, Azure Depolama ve Azure Cloud Services ile başlayacağız. Diğer Azure hizmetleri için önerilen uygulamalarla ilgili makaleler kullanıma sunuldukçe, bağlantılar aşağıdaki listede sağlanacaktır:

Bulut için uygulama geliştirirken yazılım geliştirme yaşam döngüsünün her aşamasında göz önünde bulundurmanız gereken güvenlik soruları ve denetimleri için bkz . Azure'da güvenli uygulamalar geliştirme.

Azure kullanarak bulut çözümlerinizi tasarlarken, dağıtırken ve yönetirken kullanabileceğiniz daha fazla güvenlik en iyi uygulaması için bkz . Azure güvenlik en iyi yöntemleri ve desenleri .

Azure güvenliği ve ilgili Microsoft hizmetleri hakkında daha fazla genel bilgi sağlamak için aşağıdaki kaynaklar kullanılabilir: