Bästa praxis för utveckling av Zero Trust identitets- och åtkomsthantering

Den här artikeln hjälper dig som utvecklare att förstå metodtips för identitets- och åtkomsthantering för programutvecklingslivscykeln. Du börjar utveckla säkra, Zero Trust-kompatibla program med identitets- och åtkomsthantering (IAM).

Zero Trust-säkerhetsramverket använder principerna för explicit verifiering, minst privilegierad åtkomst och antagande av intrång. Skydda användare och data samtidigt som du tillåter vanliga scenarier som åtkomst till program utanför nätverksperimetern. Minska beroendet av implicit förtroende för interaktioner bakom en säker nätverksperimeter som kan bli sårbar för säkerhetsattacker.

Zero Trust-implementeringen fortsätter att utvecklas, men varje organisations resa är unik. Det börjar ofta med användar- och programidentitet. Här är principer och kontroller som många organisationer prioriterar när de distribuerar Noll förtroende:

  • Implementera principer för autentiseringshygien och rotation för appar och tjänster. När dåliga aktörer komprometterar hemligheter som certifikat eller lösenord kan de få en djup systemåtkomst för att hämta token under sken av en apps identitet. De får sedan åtkomst till känsliga data, flyttar i sidled och etablerar beständighet.
  • Inför stark autentisering. IT-administratörer konfigurerar principer som kräver multifaktorautentisering och lösenordslösa FIDO2-enheter.
  • Begränsa användarens medgivande till appar med låg riskbehörighet till verifierade utgivarappar. Med åtkomst till data i API:er som Microsoft Graph kan du skapa omfattande program. Organisationer och kunder utvärderar appens behörighetsbegäranden och pålitlighet innan de beviljar medgivande. IT-administratörer använder sig av principen om att verifiera uttryckligen genom att kräva verifiering av utgivare. De tillämpar principen om lägsta behörighet genom att endast tillåta användarmedgivande för behörigheter med låg risk.
  • Blockera äldre protokoll och API:er. IT-administratörer blockerar äldre autentiseringsprotokoll som "Grundläggande autentisering" och kräver moderna protokoll som OpenID Connect och OAuth2.

Använda betrodda, standardbaserade autentiseringsbibliotek

Utveckla programmet med kända och godkända standarder och bibliotek för att öka programmets portabilitet och säkerhet. Betrodda, standardiserade autentiseringsbibliotek förblir uppdaterade så att dina appar är mottagliga för de senaste teknologierna och hoten. Standardbaserade utvecklingsmetoder ger en översikt över standarder som stöds och deras fördelar.

I stället för att använda protokoll med kända sårbarheter och omfattande dokumentation kan du utveckla ditt program med bibliotek som Microsoft Authentication Library (MSAL), Microsoft Identity Web Authentication Library och Azure Software Developer Kits (SDK). Med MSAL och Software Developer Kits (SDK) kan du använda dessa funktioner utan att behöva skriva extra kod:

  • Villkorlig åtkomst
  • Enhetsregistrering och hantering
  • Lösenordsfri och FIDO2-autentisering

MSAL och Microsoft Graph är de bästa alternativen för att utveckla Microsoft Entra-program. MSAL-utvecklare säkerställer efterlevnad av protokoll. Microsoft optimerar MSAL för effektivitet när du arbetar direkt med Microsoft Entra-ID.

Registrera dina appar i Microsoft Entra-ID

Följ rekommenderade säkerhetsmetoder för programegenskaper i Microsoft Entra-ID. Programregistrering i Microsoft Entra-ID är kritiskt eftersom felkonfiguration eller förfall i programmets hygien kan leda till driftstopp eller intrång.

Programegenskaper som förbättrar säkerheten är omdirigerings-URI, åtkomsttoken (används aldrig med implicita flöden), certifikat och hemligheter, program-ID-URI och programägarskap. Utför regelbundna säkerhets- och hälsoutvärderingar som liknar utvärderingar av säkerhetshotmodeller för kod.

Delegera identitets- och åtkomsthantering

Utveckla ditt program för att använda token för explicit identitetsverifiering och åtkomstkontroll som dina kunder definierar och hanterar. Microsoft avråder från att utveckla egna system för hantering av användarnamn och lösenord.

Håll autentiseringsuppgifterna borta från koden så att IT-administratörer kan rotera autentiseringsuppgifter utan att ta bort eller distribuera om din app. Använd en tjänst som Azure Key Vault eller Azure Managed Identities för att delegera IAM.

Planera och utforma för åtkomst med minst behörighet

En viktig princip för Noll förtroende är åtkomst med minst behörighet. Utveckla och dokumentera programmet tillräckligt så att dina kunder kan konfigurera principer med minsta möjliga behörighet. När du stöder token och API:er kan du ge dina kunder bra dokumentation om resurser som programmet anropar.

Ge alltid den lägsta behörighet som krävs för att användaren ska kunna utföra specifika uppgifter. Använd till exempel detaljerade omfång i Microsoft Graph.

Utforska omfång i Graph Explorer för att anropa ett API och undersöka nödvändiga behörigheter. De visas i ordning från lägsta till högsta behörighet. Genom att välja lägsta möjliga behörighet ser du till att ditt program är mindre sårbart för attacker.

Om du vill minska programsårbarheten och säkerhetsöverträdelsens sprängningsradie bör du följa anvisningarna i Förbättra säkerheten med principen om minsta behörighet.

Hantera token på ett säkert sätt

När ditt program begär token från Microsoft Entra-ID hanterar du dem på ett säkert sätt:

  • Kontrollera att de är korrekt definierade för din applikation.
  • Cachelagrade dem på lämpligt sätt.
  • Använd dem som avsett.
  • Hantera tokenproblem genom att söka efter felklasser och koda lämpliga svar.
  • I stället för att läsa åtkomsttoken direkt kan du visa deras omfång och information i tokensvar.

Stöd för utvärdering av kontinuerlig åtkomst (CAE)

Med kontinuerlig åtkomstutvärdering (CAE) kan Microsoft Graph snabbt neka åtkomst som svar på säkerhetshändelser. Exempel är dessa innehavaradministratörsaktiviteter:

  • Ta bort eller inaktivera ett användarkonto.
  • Aktivera multifaktorautentisering (MFA) för en användare.
  • Återkalla uttryckligen en användares utfärdade token.
  • Identifiera en användare som övergår till högriskstatus.

När du stöder CAE är en token som Microsoft Entra ID utfärdar för att anropa Microsoft Graph giltig i 24 timmar i stället för de vanliga 60 till 90 minuterna. CAE lägger till motståndskraft i din app genom att göra det möjligt för MSAL att proaktivt uppdatera token i god tid innan den upphör att gälla.

Definiera approller för IT att tilldela till användare och grupper

Approller hjälper dig att implementera rollbaserad åtkomstkontroll i dina program. Vanliga exempel på approller är Administratör, Läsare och Deltagare. Med rollbaserad åtkomstkontroll kan ditt program begränsa känsliga åtgärder till användare eller grupper baserat på deras definierade roller.

Bli en verifierad utgivare

Verifiera din identitet med ditt Microsoft Partner Network-konto som verifierad utgivare och slutför den etablerade verifieringsprocessen. För utvecklare av appar med flera klienter kan en verifierad utgivare skapa förtroende hos IT-administratörer i kundklientorganisationer.

Nästa steg