Oversigt
Contoso Retails sikkerhedsgennemgang identificerede fire kontrolhuller, der efterlod deres serverløse arbejdsbelastninger eksponerede: uautentificerede HTTP-triggere, klartekst-forbindelsesstrenge i applikationsindstillinger, ingen indgående netværksbegrænsninger på Function-appens endepunkter og hardkodede legitimationsoplysninger i delte Logic-app-forbindelsesressourcer. Dette modul adresserede hvert hul ved hjælp af kontroller organiseret omkring tre sikkerhedslag.
Gennemgå, hvad du har konfigureret
Autentificeringslaget—der styrer, hvem der kan påkalde en Funktionsapp—blev adresseret gennem Azure App Service Authentication. Du konfigurerede Microsoft Entra ID som EasyAuth-identitetsudbyder ved at bruge indstillingen Require autentificering for at blokere uautentificerede anmodninger, før funktionskoden eksekverer. Funktionsautorisationsniveauer giver et sekundært lag: værtsnøgler til app-omfattende adgang, funktionsnøgler til funktionsbegrænsning pr. funktion, og det anonyme niveau reserveret til endepunkter beskyttet af en upstream gateway.
Identitetslaget—der styrer, hvordan Funktionsappen fungerer ved nedstrøms kald—blev adresseret gennem systemtildelte administrerede identiteter. Med managed identity aktiveret og de relevante RBAC-roller tildelt, gemmes forbindelsesstrenge ikke længere i applikationsindstillingerne. For AI-orkestreringsmønstre, hvor Funktions-apps kalder Azure OpenAI-endepunkter, erstatter rollen Cognitive Services OpenAI User helt API-nøglelagring. Key Vault referencer med @Microsoft.KeyVault(SecretUri=...)-syntaksen udvider dette mønster til enhver applikationsindstilling, der tidligere havde en hemmelig værdi.
Netværksisoleringslaget—der styrer, hvad der kan nå funktionsendepunktet—blev adresseret gennem indgående IP-begrænsninger, private endepunkter for Funktionsapps på Elastic Premium- eller Dedized-planen samt virtuel netværksintegration for udgående trafik. Den samme tre-lags model blev anvendt på Logic-apps, hvor Standard-planen tilbyder virtuel netværksintegration, private endepunkter og isolation af enkeltlejer, som forbrugsplanen ikke understøtter. Sikre input og sikre outputindstillinger på individuelle Logic-app-handlinger beskytter følsomme data fra at dukke op i kørselshistorikken.