Security in Azure App Service

Ez a cikk bemutatja, hogyan segíti a Azure-alkalmazás Szolgáltatás a webalkalmazás, a mobilalkalmazás háttéralkalmazása, az API-alkalmazás és a függvényalkalmazás védelmét. Azt is bemutatja, hogyan védheti tovább az alkalmazást a beépített App Service-funkciókkal.

Az App Service platformösszetevői – beleértve az Azure-beli virtuális gépeket, a tárolást, a hálózati kapcsolatokat, a webes keretrendszereket, a felügyeleti és integrációs funkciókat – aktívan védve vannak és szigorú biztonsági védelemmel vannak ellátva. Az App Service folyamatosan szigorú megfelelőségi ellenőrzéseket végez, hogy meggyőződjön arról, hogy:

  • Az alkalmazás erőforrásait a többi ügyfél Azure-erőforrásai védik.
  • A virtuálisgép-példányok és a futtatókörnyezeti szoftverek rendszeresen frissülnek az újonnan felfedezett biztonsági rések kezelése érdekében.
  • A titkos kódok (például kapcsolati sztring) az alkalmazás és más Azure-erőforrások (például az SQL Database) közötti kommunikációja az Azure-ban marad, és nem lépi át a hálózati határokat. A titkos kulcsok mindig titkosítva vannak, ha tárolják őket.
  • Az App Service kapcsolati funkcióin, például a hibrid kapcsolaton keresztüli összes kommunikáció titkosítva van.
  • Csatlakozás távfelügyeleti eszközök, például az Azure PowerShell, az Azure CLI, az Azure SDK-k és a REST API-k mind titkosítva vannak.
  • A 24 órás fenyegetéskezelés védi az infrastruktúrát és a platformot a kártevők, az elosztott szolgáltatásmegtagadás (DDoS), a középen belüli (MITM) és egyéb fenyegetések ellen.

Az Azure-beli infrastruktúrával és platformbiztonságmal kapcsolatos további információkért tekintse meg az Azure Trust Centert.

Az alábbi szakaszok bemutatják, hogyan védheti meg az App Service-alkalmazást a fenyegetésektől.

HTTPS és tanúsítványok

Az App Service lehetővé teszi az alkalmazások https használatával történő védelmét. Az alkalmazás létrehozásakor az alapértelmezett tartománynév (<app_name.azurewebsites.net>) már elérhető HTTPS használatával. Ha egyéni tartományt konfigurál az alkalmazáshoz, tLS-/SSL-tanúsítvánnyal is védenie kell, hogy az ügyfélböngészők biztonságos HTTPS-kapcsolatokat létesíthessenek az egyéni tartományhoz. Az App Service többféle tanúsítványtípust támogat:

  • Ingyenes App Service által felügyelt tanúsítvány
  • App Service-tanúsítvány
  • Külső tanúsítvány
  • Az Azure Key Vaultból importált tanúsítvány

További információ: TLS/SSL-tanúsítvány hozzáadása Azure-alkalmazás szolgáltatásban.

Nem biztonságos protokollok (HTTP, TLS 1.0, FTP)

Az App Service egykattintásos konfigurációt biztosít a HTTPS kényszerítéséhez, hogy biztonságossá tegye az alkalmazást az összes titkosítatlan (HTTP-) kapcsolattal szemben. A nem biztonságos kérések el lesznek kapcsolva, mielőtt elérnék az alkalmazás kódját. További információ: HTTPS kényszerítése.

A TLS 1.0 már nem tekinthető biztonságosnak az iparági szabványok, például a PCI DSS esetében. Az App Service lehetővé teszi az elavult protokollok letiltását a TLS 1.1/1.2 kényszerítésével.

Az App Service az FTP-t és az FTPS-t is támogatja a fájlok üzembe helyezéséhez. Az FTPS-t azonban ftp helyett kell használni, ha egyáltalán lehetséges. Ha egyik vagy mindkét protokoll nincs használatban, tiltsa le őket.

Statikus IP-korlátozások

Az App Service-alkalmazás alapértelmezés szerint fogadja az internetről érkező összes IP-címről érkező kéréseket, de ezt a hozzáférést az IP-címek egy kis részhalmazára korlátozhatja. A Windows App Service lehetővé teszi az alkalmazás eléréséhez engedélyezett IP-címek listáját. Az engedélyezett lista tartalmazhat egyedi IP-címeket vagy egy alhálózati maszk által definiált IP-címtartományt. További információ: Azure-alkalmazás Szolgáltatás statikus IP-korlátozásai.

Windows App Service esetén az IP-címeket dinamikusan is korlátozhatja a web.config konfigurálásával. További információ: Dynamic IP Security <dynamicIpSecurity>.

Ügyfélhitelesítés és -engedélyezés

Azure-alkalmazás szolgáltatás kulcsrakész hitelesítést és hitelesítést biztosít a felhasználók vagy ügyfélalkalmazások számára. Ha engedélyezve van, a felhasználókat és az ügyfélalkalmazásokat kevés vagy semmilyen alkalmazáskód nélkül is bejelentkeztetheti. Implementálhatja saját hitelesítési és engedélyezési megoldását, vagy engedélyezheti, hogy az App Service kezelje helyette. A hitelesítési és engedélyezési modul kezeli a webes kéréseket, mielőtt átadja őket az alkalmazás kódjának, és tagadja a jogosulatlan kéréseket, mielőtt elérnék a kódot.

Az App Service-hitelesítés és -engedélyezés több hitelesítésszolgáltatót támogat, beleértve a Microsoft Entra-azonosítót, a Microsoft-fiókokat, a Facebookot, a Google-t és a Twittert. További információkért lásd: Hitelesítés és engedélyezés az Azure App Service-ben.

Szolgáltatások közötti hitelesítés

Háttérszolgáltatáson való hitelesítéskor az App Service két különböző mechanizmust biztosít az igényeitől függően:

  • Szolgáltatásidentitás – Jelentkezzen be a távoli erőforrásba az alkalmazás identitásával. Az App Service segítségével egyszerűen létrehozhat egy felügyelt identitást, amellyel hitelesítést végezhet más szolgáltatásokkal, például az Azure SQL Database-zel vagy az Azure Key Vaulttal. Ennek a megközelítésnek a végpontok közötti oktatóanyagát lásd: Biztonságos Azure SQL Database-kapcsolat az App Service-ből felügyelt identitás használatával.
  • On-behalf-of (OBO) – Delegált hozzáférést biztosít a távoli erőforrásokhoz a felhasználó nevében. Ha a Microsoft Entra ID-t használja hitelesítésszolgáltatóként, az App Service-alkalmazás delegált bejelentkezést végezhet egy távoli szolgáltatásba, például a Microsoft Graphba vagy egy távoli API-alkalmazásba az App Service-ben. Ennek a megközelítésnek a végpontok közötti oktatóanyagát a felhasználók hitelesítése és engedélyezése a Azure-alkalmazás szolgáltatásban című témakörben talál.

Csatlakozás a távoli erőforrásokra való Csatlakozás

Az alkalmazásnak háromféle távoli erőforráshoz kell hozzáférnie:

Az App Service minden ilyen esetben lehetővé teszi a biztonságos kapcsolatok létesítésének módját, de a biztonsági ajánlott eljárásokat továbbra is be kell tartania. Például mindig használjon titkosított kapcsolatokat akkor is, ha a háttérerőforrás engedélyezi a titkosítatlan kapcsolatokat. Emellett győződjön meg arról, hogy a háttérbeli Azure-szolgáltatás lehetővé teszi az IP-címek minimális készletét. Az alkalmazás kimenő IP-címeit a bejövő és kimenő IP-címeken találja Azure-alkalmazás Szolgáltatásban.

Azure resources

Amikor az alkalmazás azure-erőforrásokhoz, például az SQL Database-hez és az Azure Storage-hoz csatlakozik, a kapcsolat az Azure-ban marad, és nem lépi át a hálózati határokat. A kapcsolat azonban az Azure-ban megosztott hálózatkezelésen megy keresztül, ezért mindig győződjön meg arról, hogy a kapcsolat titkosítva van.

Ha az alkalmazást App Service-környezetben üzemeltetik, virtuális hálózati szolgáltatásvégpontok használatával kell csatlakoznia a támogatott Azure-szolgáltatásokhoz.

Azure-beli virtuális hálózaton belüli erőforrások

Az alkalmazás virtuális hálózati integrációval érheti el az Azure-beli virtuális hálózat erőforrásait. Az integráció pont–hely VPN használatával jön létre egy virtuális hálózattal. Az alkalmazás ezután hozzáférhet a virtuális hálózat erőforrásaihoz a saját IP-címükkel. A pont–hely kapcsolat azonban továbbra is bejárja a megosztott hálózatokat az Azure-ban.

Ha teljesen el szeretné különíteni az erőforrás-kapcsolatot az Azure megosztott hálózataitól, hozza létre az alkalmazást App Service-környezetben. Mivel egy App Service-környezet mindig egy dedikált virtuális hálózaton van üzembe helyezve, az alkalmazás és a virtuális hálózaton belüli erőforrások közötti kapcsolat teljesen el van különítve. Az App Service-környezetek hálózati biztonságának egyéb szempontjait lásd: Hálózatelkülönítés.

Helyszíni erőforrások

A helyszíni erőforrásokat, például az adatbázisokat három módon érheti el biztonságosan:

  • Hibrid kapcsolatok – Pont–pont kapcsolatot hoz létre a távoli erőforrással egy TCP-alagúton keresztül. A TCP-alagút a TLS 1.2 használatával, közös hozzáférésű jogosultságkód (SAS) kulcsokkal jön létre.
  • Virtuális hálózat integrációja helyek közötti VPN-vel – Az Azure-beli virtuális hálózaton belüli erőforrásokban leírtak szerint, de a virtuális hálózat egy helyek közötti VPN-en keresztül csatlakoztatható a helyszíni hálózathoz. Ebben a hálózati topológiában az alkalmazás csatlakozhat a helyszíni erőforrásokhoz, például a virtuális hálózat más erőforrásaihoz.
  • App Service-környezet helyek közötti VPN-vel – Az Azure-beli virtuális hálózaton belüli erőforrásokban leírtak szerint, de a virtuális hálózat egy helyek közötti VPN-en keresztül csatlakoztatható a helyszíni hálózathoz. Ebben a hálózati topológiában az alkalmazás csatlakozhat a helyszíni erőforrásokhoz, például a virtuális hálózat más erőforrásaihoz.

Alkalmazás titkos kódjai

Ne tároljon alkalmazáskulcsokat, például adatbázis-hitelesítő adatokat, API-jogkivonatokat és titkos kulcsokat a kódban vagy a konfigurációs fájlokban. Az általánosan elfogadott megközelítés az, hogy környezeti változókként, a választott nyelv szabványos mintájának használatával érik el őket. Az App Service-ben a környezeti változók meghatározásának módja az alkalmazásbeállításokon keresztül történik (és különösen a .NET-alkalmazások esetében kapcsolati sztring). Az alkalmazásbeállításokat és kapcsolati sztring az Azure-ban titkosítva tárolja a rendszer, és csak az alkalmazás indításakor lesznek visszafejtve, mielőtt az alkalmazás folyamatmemóriájába injektálják őket. A titkosítási kulcsok rendszeres elforgatása.

Alternatív megoldásként integrálhatja az App Service-alkalmazást az Azure Key Vaulttal a speciális titkos kódok kezeléséhez. A Key Vault felügyelt identitással való elérésével az App Service-alkalmazás biztonságosan hozzáférhet a szükséges titkos kulcsokhoz.

Hálózatelkülönítés

Az izolált tarifacsomag kivételével minden szint az appokat az App Service megosztott hálózati infrastruktúráján futtatja. A nyilvános IP-címek és az előtérbeli terheléselosztók például más bérlőkkel vannak megosztva. Az izolált szint teljes hálózatelkülönítést biztosít az alkalmazások dedikált App Service-környezetben való futtatásával. Az App Service-környezetek az Azure Virtual Network saját példányán futnak. Lehetővé teszi a következőket:

  • Az alkalmazásokat dedikált nyilvános végponton keresztül, dedikált előtérrendszerekkel szolgálja ki.
  • Belső alkalmazás kiszolgálása belső terheléselosztóval (ILB), amely csak az Azure-beli virtuális hálózatból engedélyezi a hozzáférést. Az ILB rendelkezik egy IP-címmel a privát alhálózatról, amely az alkalmazások teljes elkülönítését biztosítja az internetről.
  • Használjon ILB-t egy webalkalmazási tűzfal (WAF) mögött. A WAF nagyvállalati szintű védelmet nyújt a nyilvános alkalmazásoknak, például a DDoS-védelemnek, az URI-szűrésnek és az SQL-injektálási megelőzésnek.

DDoS elleni védelem

Webes számítási feladatok esetén javasoljuk az Azure DDoS-védelem és a webalkalmazási tűzfal használatát a felmerülő DDoS-támadások elleni védelem érdekében. Egy másik lehetőség az Azure Front Door üzembe helyezése webalkalmazási tűzfallal együtt. Az Azure Front Door platformszintű védelmet nyújt a hálózati szintű DDoS-támadások ellen.

További információ: Bevezetés a Azure-alkalmazás szolgáltatáskörnyezetek használatába.