Aceasta acoperă codul funcțiilor, dependențele, artefactele de implementare, sursele de evenimente, identitățile sarcinilor de lucru, permisiunile, secretele, datele, API-urile și serviciile gestionate conectate. Sarcinile de lucru serverless încă se execută pe servere; furnizorul operează mai mult din stratul de runtime, izolare, scalare și infrastructură.
Functions as a service folosește în mod obișnuit evenimente pentru a declanșa cod de scurtă durată, dar serverless include și componente de aplicație gestionate. Securitatea se mută spre validarea evenimentelor, autorizarea per funcție, configurația serviciilor, lanțurile de aprovizionare și interfețele furnizorului. Execuția scurtă și scalarea automată schimbă scenariile de monitorizare, răspuns, disponibilitate și abuz de cost.
Puncte esențiale
Evenimente și identitateAutentificați căile de invocare, tratați încărcăturile și metadatele evenimentelor ca nesigure, dați fiecărei funcții permisiuni înguste și restricționați accesul la servicii și rețea în aval.
Cod și configurațieRevizuiți dependențele și pachetele, păstrați secretele în afara codului și jurnalelor, separați mediile, protejați pipeline-urile de livrare și inventariați funcțiile, declanșatorii, layerele, versiunile și endpointurile nefolosite.
Observare și reziliențăCorelați evenimentele de invocare, identitate, API și date fără a reține încărcături inutile; definiți controale de concurență, timeout, reîncercare, dead-letter și cheltuieli; și testați evenimente malițioase și eșuate.
Limitare importantăServerless transferă o parte din operarea infrastructurii, nu responsabilitatea pentru aplicație. Codul vulnerabil, permisiunile excesive, evenimentele nesigure, secretele expuse și API-urile nesigure rămân riscuri ale clientului. Izolarea furnizorului și vizibilitatea runtime pot fi greu de verificat, în timp ce scalarea rapidă, reîncercările sau dependențele partajate pot amplifica impactul asupra denial-of-service, costului și disponibilității.