Dela via


Identitets- och åtkomsthantering för Azure Spring Apps-acceleratorn för landningszoner

Den här artikeln beskriver designöverväganden och rekommendationer för att autentisera användare i Azure Spring Apps och ge användarna den åtkomstnivå som krävs för arbetsbelastningsresurser.

Det centraliserade plattformsteamet och programteamen måste ha en god förståelse för:

  • Vilka team behöver åtkomst till arbetsbelastningen för Azure Spring-appen som distribueras i programlandningszonen.
  • Roller och ansvar för användare och vem som behöver åtkomst.
  • Den lägsta behörighetsnivå som krävs för att utföra dessa ansvarsområden.

Information om plattformsdesignen finns i Designområdet för azure-identitets- och åtkomsthantering.

Som arbetsbelastningsägare följer du dessa metodtips för att säkerställa att programresurserna inte bryter mot organisationens säkerhets- eller styrningsgränser. Målet är att säkerställa att den distribuerade Azure Spring-appen och de relaterade resurserna i arbetsbelastningen är säkra och endast tillgängliga för behöriga användare. När du följer dessa metoder skyddar du känsliga data och förhindrar missbruk av appen och dess resurser.

Tips för utformning

  • Åtkomst från programmet till andra tjänster. Programmet bör autentisera sig när det ansluter till serverdelstjänster som ingår i arbetsbelastningen. Den här autentiseringen skyddar tjänsterna från obehörig åtkomst. Överväg att använda funktioner i Microsoft Entra-ID för att förhindra att autentiseringsuppgifter lagras och hanteras.

  • Åtkomst till programmet. Användare kan skicka begäranden till programmet via det offentliga Internet. Eller så kan begäranden komma från privata eller lokala nätverk. I båda fallen måste åtkomst autentiseras baserat på klientcertifikat eller via Microsoft Entra-ID.

    Överväg teknikalternativen för den tjänstidentifieringsmekanism som anropar anrop mellan appar. Alternativen varierar beroende på Azure Spring Apps-nivån.

  • Operatoråtkomst till resurser. Teammedlemmar med olika ansvarsområden kan komma åt din arbetsbelastning. Du kan till exempel behöva bevilja åtkomst till:

    • Plattformsteammedlemmar som behöver driftåtkomst.
    • Medlemmar i programteamet som utvecklar program.
    • DevOps-tekniker som skapar och släpper pipelines för att distribuera arbetsbelastningen och konfigurera med hjälp av infrastruktur som kod (IaC).
    • Platstillförlitlighetstekniker för felsökningsproblem.

    Baserat på syftet med åtkomsten bestämmer du vilken kontrollnivå du vill ge användaren. Börja med principen om lägsta behörighet. RBAC-rolltilldelningar kan säkerställa att användarna har rätt uppsättning behörigheter för sina ansvarsområden och upprätthålla gränser. Överväg inbyggda RBAC-roller innan du skapar anpassade roller.

  • Konfigurationsdataåtkomst. Baserat på ditt val av nivå för Azure Spring Apps (Basic/Standard eller Enterprise) måste du bestämma konfigurationsserveralternativ.

    För Basic bör du överväga stöd för server- och klientsidan. Om du vill lagra konfigurationsserverfilerna väljer du en externaliserad konfiguration i ett distribuerat system, till exempel Azure DevOps, GitHub, GitLab eller Bitbucket.

    Du kan använda offentliga eller privata lagringsplatser och välja deras autentiseringsmekanism. Azure Spring Apps stöder grundläggande lösenord eller tokenbaserad autentisering och SSH.

    För Enterprise kan du överväga att använda Application Configuration Service för VMware Tanzu, som möjliggör hantering av Kubernetes-inbyggda ConfigMap-resurser som fylls i från egenskaper som definierats i en eller flera Git-lagringsplatser.

Designrekommendationer

Hanterade identiteter

Använd hanterade identiteter för programmet så att det autentiseras via Microsoft Entra-ID. Alla tjänster stöder inte den här funktionen i Microsoft Entra-ID. Mer information finns i Azure-tjänster som stöder Microsoft Entra-autentisering.

Bestäm vilken typ av hanterad identitet som är lämplig för ditt användningsfall. Överväg kompromisserna med enkel hantering. Om programmet till exempel behöver åtkomst till flera resurser rekommenderas användartilldelade hanterade identiteter. Men om du vill ha behörigheter kopplade till programmets livscykel kan systemhanterade identiteter passa bättre.

Mer information finns i Välj system eller användartilldelade hanterade identiteter.

Använd inbyggda Azure RBAC-roller för att förenkla hanteringen av nödvändiga behörigheter för en hanterad identitet.

  • Använd din egen hanterade identitet för Azure Spring Apps.
  • Använd systemtilldelade och användartilldelade hanterade identiteter separat. Mer information finns i Metodtips när du använder hanterade identiteter.
  • Använd Privileged Identity Management i Microsoft Entra-ID.

Säker internetkommunikation

  • Använd certifikat som utfärdats av en certifikatutfärdare, utökade valideringscertifikat eller jokerteckencertifikat.
  • Använd endast självsignerade certifikat för förproduktionsmiljöer.
  • Läs in certifikat från Azure Key Vault på ett säkert sätt.

Rollbaserad åtkomstkontroll (RBAC)

  • Överväg att skapa anpassade roller. Följ principen om minsta behörighet när färdiga roller kräver ändringar i befintliga behörigheter.
  • Välj förbättrad lagring för nycklar, hemligheter, certifikat och programkonfiguration.
  • För automatisk distribution konfigurerar du ett huvudnamn för tjänsten som har den minsta behörighet som krävs för att distribuera från CI/CD-pipelinen.
  • Aktivera diagnostikloggning för programkonsolen, systemloggar, inkommande loggar, byggloggar och containerhändelseloggar. Du kan använda dessa detaljerade loggar för att diagnostisera problem med din app och övervaka åtkomstbegäranden. När du aktiverar dessa loggar ger en Azure Monitor-aktivitetslogg dig insikt i händelser på prenumerationsnivå.

Nästa steg

Nätverkstopologi och anslutning