Biztonság az Azure App Service-ben
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.
- Az olyan távfelügyeleti eszközökkel való kapcsolatok, mint 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 is támogat, beleértve a Microsoft Entra-azonosítót, a Microsoft-fiókokat, a Facebookot, a Google-t és az X-t. További információ: Hitelesítés és engedélyezés Azure-alkalmazás szolgáltatásban.
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.
Kapcsolat távoli erőforrásokhoz
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-erőforrások
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ózati elkü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.