Udostępnij przez


Zabezpieczanie wdrożenia usługi Azure App Service

Usługa Azure App Service udostępnia środowisko typu "platforma jako usługa" (PaaS), które umożliwia tworzenie, wdrażanie i skalowanie aplikacji internetowych, zapleczy aplikacji mobilnych, interfejsów API RESTful i aplikacji funkcji. Podczas wdrażania tej usługi ważne jest przestrzeganie najlepszych rozwiązań w zakresie zabezpieczeń w celu ochrony aplikacji, danych i infrastruktury.

Ten artykuł zawiera wskazówki dotyczące najlepszego zabezpieczania wdrożenia usługi Azure App Service.

Usługa Azure App Service aktywnie zabezpiecza i wzmacnia jej składniki platformy, w tym maszyny wirtualne platformy Azure, magazyn, połączenia sieciowe, struktury internetowe oraz funkcje zarządzania i integracji. Usługa App Service przechodzi ciągłe, rygorystyczne kontrole zgodności w celu zapewnienia, że:

Aby uzyskać więcej informacji na temat zabezpieczeń infrastruktury i platformy na platformie Azure, zobacz Centrum zaufania Platformy Azure.

Bezpieczeństwo sieci

Usługa App Service obsługuje wiele funkcji zabezpieczeń sieci w celu zablokowania aplikacji i zapobiegania nieautoryzowanemu dostępowi.

  • Konfigurowanie prywatnych punktów końcowych: eliminowanie publicznej ekspozycji w Internecie przez kierowanie ruchu do usługi App Service za pośrednictwem sieci wirtualnej przy użyciu usługi Azure Private Link, zapewniając bezpieczną łączność dla klientów w sieciach prywatnych. Zobacz Używanie prywatnych punktów końcowych dla usługi Azure App Service.

  • Implementowanie integracji sieci wirtualnej: zabezpieczanie ruchu wychodzącego przez umożliwienie aplikacji uzyskiwania dostępu do zasobów w sieci wirtualnej platformy Azure lub za pośrednictwem niej przy zachowaniu izolacji od publicznego Internetu. Zobacz Integrowanie aplikacji z siecią wirtualną platformy Azure.

  • Konfigurowanie ograniczeń dostępu do adresów IP: ogranicz dostęp do aplikacji, definiując listę dozwolonych adresów IP i podsieci, które mogą uzyskiwać dostęp do aplikacji, blokując cały inny ruch. Można zdefiniować poszczególne adresy IP lub zakresy zdefiniowane przez maski podsieci i skonfigurować dynamiczne ograniczenia adresów IP za pomocą plików web.config w aplikacjach systemu Windows. Zobacz Konfigurowanie ograniczeń dostępu do usługi Azure App Service.

  • Konfigurowanie ograniczeń punktu końcowego usługi: zablokuj dostęp przychodzący do aplikacji z określonych podsieci w sieciach wirtualnych przy użyciu punktów końcowych usługi, które współpracują z ograniczeniami dostępu ip w celu zapewnienia filtrowania na poziomie sieci. Zobacz Ograniczenia dostępu do usługi Azure App Service.

  • Użyj zapory aplikacji internetowej: zwiększ ochronę przed typowymi lukami w zabezpieczeniach internetowych i atakami, implementując usługę Azure Front Door lub Application Gateway z funkcjami zapory aplikacji internetowej przed usługą App Service. Zobacz Zapora aplikacji internetowej platformy Azure w usłudze Azure Application Gateway.

Zarządzanie tożsamością i dostępem

Prawidłowe zarządzanie tożsamościami i mechanizmami kontroli dostępu jest niezbędne do zabezpieczania wdrożeń usługi Azure App Service przed nieautoryzowanym użyciem i potencjalnym kradzieżą poświadczeń.

  • Włącz tożsamości zarządzane dla żądań wychodzących: Bezpiecznie uwierzytelniaj się w usługach Azure z aplikacji bez przechowywania poświadczeń w kodzie lub konfiguracji, korzystając z tożsamości zarządzanych, co eliminuje konieczność zarządzania zasadami usługi i parametrami połączenia. Tożsamości zarządzane zapewniają automatycznie zarządzaną tożsamość w usłudze Microsoft Entra ID dla aplikacji do wykorzystania podczas realizowania żądań wychodzących do innych usług platformy Azure, takich jak Azure SQL Database, Azure Key Vault i Azure Storage. Usługa App Service obsługuje tożsamości zarządzane przypisane przez system i przypisane przez użytkownika. Zobacz Używanie tożsamości zarządzanych dla usług App Service i Azure Functions.

  • Konfigurowanie uwierzytelniania i autoryzacji: zaimplementuj uwierzytelnianie/autoryzację usługi App Service, aby zabezpieczyć aplikację przy użyciu identyfikatora Entra firmy Microsoft lub innych dostawców tożsamości, uniemożliwiając nieautoryzowany dostęp bez konieczności pisania niestandardowego kodu uwierzytelniania. Wbudowany moduł uwierzytelniania obsługuje żądania internetowe przed przekazaniem ich do kodu aplikacji i obsługuje wielu dostawców, takich jak Microsoft Entra ID, Konta Microsoft, Facebook, Google i X. Zobacz Uwierzytelnianie i autoryzacja w usłudze Azure App Service.

  • Zaimplementuj kontrolę dostępu opartą na rolach dla operacji zarządzania: kontrolowanie, kto może zarządzać zasobami usługi App Service (płaszczyzną zarządzania) i skonfigurować je, przypisując minimalne niezbędne uprawnienia RBAC platformy Azure do użytkowników i jednostek usługi zgodnie z zasadą najniższych uprawnień. Pozwala to kontrolować dostęp administracyjny do operacji, takich jak tworzenie aplikacji, modyfikowanie ustawień konfiguracji i zarządzanie wdrożeniami — niezależnie od uwierzytelniania na poziomie aplikacji (Easy Auth) lub uwierzytelniania między aplikacjami (tożsamościami zarządzanymi). Zobacz Role wbudowane platformy Azure.

  • Implementowanie uwierzytelniania w imieniu innych: delegowanie dostępu do zasobów zdalnych w imieniu użytkowników przy użyciu Microsoft Entra ID jako dostawcy uwierzytelniania. Aplikacja App Service może wykonywać delegowane logowanie do usług, takich jak Microsoft Graph lub zdalne aplikacje API App Service. Zapoznaj się z kompleksowym samouczkiem, Uwierzytelnianie i autoryzowanie użytkowników końcowych w usłudze Azure App Service.

  • Włącz wzajemne uwierzytelnianie TLS: wymagaj certyfikatów klienta dla dodanych zabezpieczeń, gdy aplikacja musi zweryfikować tożsamość klienta, szczególnie w przypadku scenariuszy B2B lub aplikacji wewnętrznych. Zobacz Konfigurowanie wzajemnego uwierzytelniania TLS dla usługi Azure App Service.

Ochrona danych

Ochrona danych przesyłanych i magazynowanych ma kluczowe znaczenie dla zachowania poufności i integralności aplikacji i ich danych.

  • Wymuszaj protokół HTTPS: przekierowuj cały ruch HTTP do protokołu HTTPS, włączając tryb tylko HTTPS, zapewniając, że cała komunikacja między klientami a aplikacją jest szyfrowana. Domyślnie usługa App Service wymusza przekierowanie z żądań HTTP do protokołu HTTPS, a domyślna nazwa <app_name>.azurewebsites.net domeny aplikacji jest już dostępna za pośrednictwem protokołu HTTPS. Zobacz Konfigurowanie ustawień ogólnych.

  • Konfigurowanie wersji protokołu TLS: używaj nowoczesnych protokołów TLS, konfigurując minimalną wersję protokołu TLS do wersji 1.2 lub nowszej i wyłączając nieaktualne, niezabezpieczone protokoły, aby zapobiec potencjalnym lukom w zabezpieczeniach. Usługa App Service obsługuje protokoły TLS 1.3 (najnowsza wersja), TLS 1.2 (minimum domyślne) i TLS 1.1/1.0 (tylko w przypadku zgodności z poprzednimi wersjami). Skonfiguruj minimalną wersję protokołu TLS zarówno dla aplikacji internetowej, jak i witryny SCM. Zobacz Konfigurowanie ustawień ogólnych.

  • Zarządzanie certyfikatami TLS/SSL: zabezpieczanie domen niestandardowych przy użyciu prawidłowo skonfigurowanych certyfikatów TLS/SSL w celu nawiązywania zaufanych połączeń. Usługa App Service obsługuje wiele typów certyfikatów: bezpłatne certyfikaty zarządzane przez usługę App Service, certyfikaty usługi App Service, certyfikaty innych firm i certyfikaty importowane z usługi Azure Key Vault. Jeśli skonfigurujesz domenę niestandardową, zabezpiecz ją przy użyciu certyfikatu TLS/SSL, aby przeglądarki mogły zabezpieczyć połączenia HTTPS. Zobacz Dodawanie certyfikatów TLS/SSL i zarządzanie nimi w usłudze Azure App Service.

  • Przechowuj sekrety w usłudze Key Vault: Chroń poufne wartości konfiguracyjne, takie jak poświadczenia bazy danych, tokeny API i klucze prywatne, przechowując je w Azure Key Vault i uzyskując do nich dostęp przy użyciu tożsamości zarządzanych, zamiast przechowywać w ustawieniach aplikacji lub kodzie. Aplikacja usługi App Service może bezpiecznie uzyskać dostęp do usługi Key Vault przy użyciu uwierzytelniania tożsamości zarządzanej. Zobacz Używanie odwołań usługi Key Vault dla usług App Service i Azure Functions.

  • Szyfruj ustawienia aplikacji: użyj zaszyfrowanych ustawień aplikacji i parametrów połączenia zamiast przechowywania wpisów tajnych w kodzie lub plikach konfiguracji. Usługa App Service przechowuje te wartości zaszyfrowane na platformie Azure i odszyfrowuje je tuż przed wstrzyknięciem do pamięci procesu aplikacji po uruchomieniu aplikacji, a klucze szyfrowania są regularnie obracane. Uzyskaj dostęp do tych wartości jako zmiennych środowiskowych przy użyciu standardowych wzorców dla języka programowania. Zobacz Konfigurowanie ustawień aplikacji.

  • Bezpieczne połączenia zdalne: zawsze używaj szyfrowanych połączeń podczas uzyskiwania dostępu do zasobów zdalnych, nawet jeśli zasób zaplecza zezwala na niezaszyfrowane połączenia. W przypadku zasobów platformy Azure, takich jak Azure SQL Database i Azure Storage, połączenia pozostają na platformie Azure i nie przekraczają granic sieci. W przypadku zasobów sieci wirtualnej należy użyć integracji sieci wirtualnej z siecią VPN typu punkt-lokacja. W przypadku zasobów lokalnych należy używać połączeń hybrydowych z protokołem TLS 1.2 lub integracji sieci wirtualnej z siecią VPN typu lokacja-lokacja. Upewnij się, że usługi platformy Azure zaplecza zezwalają tylko na najmniejszy możliwy zestaw adresów IP z aplikacji. Zobacz Znajdowanie wychodzących adresów IP.

Rejestrowanie i monitorowanie

Implementowanie kompleksowego rejestrowania i monitorowania jest niezbędne do wykrywania potencjalnych zagrożeń bezpieczeństwa i rozwiązywania problemów z wdrożeniem usługi Azure App Service.

Zgodność i ład

Ustanowienie odpowiedniego ładu i zapewnienie zgodności z odpowiednimi standardami ma kluczowe znaczenie dla bezpiecznej operacji aplikacji usługi Azure App Service.

  • Implementowanie usługi Azure Policy: wymuszanie standardów zabezpieczeń dla całej organizacji dla wdrożeń usługi App Service przez utworzenie i przypisanie definicji usługi Azure Policy, które przeprowadzają inspekcję i wymuszają wymagania dotyczące zgodności. Zobacz Mechanizmy zgodności z przepisami Azure Policy dla Azure App Service.

  • Przejrzyj zalecenia dotyczące zabezpieczeń: Regularnie oceniaj stan zabezpieczeń usługi App Service przy użyciu usługi Microsoft Defender dla Chmury, aby identyfikować i korygować luki w zabezpieczeniach oraz błędy konfiguracji. Zobacz Ochrona aplikacji internetowych i interfejsów API usługi Azure App Service.

  • Przeprowadzanie ocen zabezpieczeń: regularne oceny zabezpieczeń i testowanie penetracyjne aplikacji usługi App Service w celu zidentyfikowania potencjalnych luk w zabezpieczeniach i słabych stron zabezpieczeń. Zobacz Test porównawczy zabezpieczeń w chmurze firmy Microsoft.

  • Zachowaj zgodność z przepisami: skonfiguruj wdrożenia usługi App Service zgodnie z obowiązującymi wymaganiami prawnymi dla twojej branży i regionu, szczególnie w odniesieniu do ochrony danych i prywatności. Zobacz dokumentację zgodności platformy Azure.

  • Wdrażanie bezpiecznych praktyk DevOps: ustanów bezpieczne kanały CI/CD do wdrażania aplikacji na App Service, w tym skanowanie kodu, sprawdzanie zależności i zautomatyzowane testowanie zabezpieczeń. Zobacz DevSecOps na platformie Azure.

Kopia zapasowa i przywracanie

Implementowanie niezawodnych mechanizmów tworzenia kopii zapasowych i odzyskiwania jest niezbędne do zapewnienia ciągłości działania i ochrony danych we wdrożeniach usługi Azure App Service.

  • Włącz automatyczne kopie zapasowe: skonfiguruj zaplanowane kopie zapasowe dla aplikacji usługi App Service, aby mieć pewność, że możesz odzyskać aplikacje i dane w przypadku przypadkowego usunięcia, uszkodzenia lub innych awarii. Zobacz Tworzenie kopii zapasowej i przywracanie aplikacji w usłudze Azure App Service.

  • Konfigurowanie przechowywania kopii zapasowych: ustaw odpowiednie okresy przechowywania kopii zapasowych na podstawie wymagań biznesowych i potrzeb dotyczących zgodności, zapewniając zachowanie krytycznych danych przez wymagany czas trwania. Zobacz Tworzenie kopii zapasowej i przywracanie aplikacji w usłudze Azure App Service.

  • Implementowanie wdrożeń obejmujących wiele regionów: wdróż krytyczne aplikacje w wielu regionach, aby zapewnić wysoką dostępność i możliwości odzyskiwania po awarii w przypadku awarii regionalnych. Zobacz Samouczek: tworzenie aplikacji z wieloma regionami o wysokiej dostępności w usłudze App Service.

  • Testowanie przywracania kopii zapasowej: Regularnie testuj proces przywracania kopii zapasowej, aby upewnić się, że kopie zapasowe są prawidłowe i można je pomyślnie przywrócić w razie potrzeby, sprawdzając zarówno funkcjonalność aplikacji, jak i integralność danych. Zobacz Przywracanie aplikacji z kopii zapasowej.

  • Procedury odzyskiwania dokumentów: Tworzenie i utrzymywanie kompleksowej dokumentacji procedur odzyskiwania, zapewnienie szybkiej i skutecznej reakcji podczas przerw w działaniu usługi lub awarii.

Zabezpieczenia specyficzne dla usługi

Usługa Azure App Service ma unikatowe zagadnienia dotyczące zabezpieczeń, które należy uwzględnić w celu zapewnienia ogólnego bezpieczeństwa aplikacji internetowych.

  • Wyłącz uwierzytelnianie podstawowe: Wyłącz uwierzytelnianie podstawowe nazwy użytkownika i hasła dla punktów końcowych FTP i SCM na rzecz uwierzytelniania opartego na identyfikatorze Entra firmy Microsoft, które zapewnia uwierzytelnianie oparte na tokenach OAuth 2.0 z rozszerzonymi zabezpieczeniami. Zobacz Wyłączanie uwierzytelniania podstawowego we wdrożeniach usługi Azure App Service.

  • Bezpieczne wdrożenia FTP/FTPS: wyłącz dostęp do protokołu FTP lub wymuś tryb tylko FTPS podczas używania FTP do wdrożeń, aby zapobiec przesyłaniu poświadczeń i zawartości w formie niezaszyfrowanej. Nowe aplikacje są domyślnie akceptowane tylko za pomocą protokołu FTPS. Zobacz Wdrażanie aplikacji w usłudze Azure App Service przy użyciu protokołu FTP/S.

  • Osiągnij kompletną izolację sieci: użyj środowiska App Service Environment, aby uruchamiać aplikacje w dedykowanym środowisku App Service Environment we własnym wystąpieniu usługi Azure Virtual Network. Zapewnia to pełną izolację sieci od udostępnionej infrastruktury z dedykowanymi publicznymi punktami końcowymi, wewnętrznymi opcjami modułu równoważenia obciążenia (ILB) dla dostępu tylko wewnętrznego oraz możliwością używania wewnętrznego modułu równoważenia obciążenia za zaporą aplikacji internetowej na potrzeby ochrony na poziomie przedsiębiorstwa. Zobacz Wprowadzenie do środowisk Azure App Service Environments.

  • Implementowanie ochrony przed atakami DDoS: użyj zapory aplikacji internetowej (WAF) i ochrony przed atakami DDoS platformy Azure, aby chronić przed pojawiającymi się atakami DDoS. Skonfiguruj usługę Azure Front Door z zaporą aplikacji internetowej (WAF) dla ochrony na poziomie platformy przed atakami DDoS na poziomie sieci. Zobacz Azure DDoS Protection i Azure Front Door z WAF.