Behörigheter och säkerhet i Azure Chaos Studio

Med Azure Chaos Studio kan du förbättra tjänstens motståndskraft genom att systematiskt mata in fel i dina Azure-resurser. Felinmatning är ett kraftfullt sätt att förbättra tjänstens motståndskraft, men det kan också vara farligt. Att orsaka fel i ditt program kan ha större inverkan än vad som ursprungligen var avsett och öppna möjligheter för skadliga aktörer att infiltrera dina program.

Chaos Studio har en robust behörighetsmodell som förhindrar att fel körs oavsiktligt eller av en dålig aktör. I den här artikeln får du lära dig hur du kan skydda resurser som är avsedda för felinmatning med hjälp av Chaos Studio.

Hur kan jag begränsa möjligheten att mata in fel med Chaos Studio?

Chaos Studio har tre säkerhetsnivåer som hjälper dig att kontrollera hur och när felinmatning kan inträffa mot en resurs:

  • Först är ett kaosexperiment en Azure-resurs som distribueras till en region, resursgrupp och prenumeration. Användarna måste ha rätt Azure Resource Manager-behörigheter för att kunna skapa, uppdatera, starta, avbryta, ta bort eller visa ett experiment.

    Varje behörighet är en Resource Manager-åtgärd som kan tilldelas i detalj till en identitet eller tilldelas som en del av en roll med jokerteckenbehörigheter. Rollen Deltagare i Azure har */write till exempel behörighet i det tilldelade omfånget, som innehåller Microsoft.Chaos/experiments/write behörighet.

    När du försöker kontrollera möjligheten att mata in fel mot en resurs är Microsoft.Chaos/experiments/start/actionden viktigaste åtgärden att begränsa . Den här åtgärden startar ett kaosexperiment som matar in fel.

  • För det andra har ett kaosexperiment en systemtilldelad hanterad identitet eller en användartilldelad hanterad identitet som kör fel på en resurs. Om du väljer att använda en systemtilldelad hanterad identitet för experimentet skapas identiteten när experimentet skapas i din Microsoft Entra-klientorganisation. Användartilldelade hanterade identiteter kan användas i valfritt antal experiment.

    I ett kaosexperiment kan du välja att aktivera anpassad rolltilldelning för val av systemtilldelad eller användartilldelad hanterad identitet. Genom att aktivera den här funktionen kan Chaos Studio skapa och tilldela en anpassad roll som innehåller alla nödvändiga experimentåtgärdsfunktioner till experimentets identitet (som inte redan finns i ditt identitetsval). Om ett kaosexperiment använder en användartilldelad hanterad identitet bevaras alla anpassade roller som tilldelats experimentidentiteten av Chaos Studio efter att experimentet har tagits bort.

    Om du väljer att bevilja experimentbehörigheterna manuellt måste du ge dess identitet lämpliga behörigheter till alla målresurser. Om experimentidentiteten inte har rätt behörighet till en resurs kan den inte köra ett fel mot den resursen.

  • För det tredje måste varje resurs registreras i Chaos Studio som ett mål med motsvarande funktioner aktiverade. Om det inte finns något mål eller kapacitet för felet som körs misslyckas experimentet utan att resursen påverkas.

Användartilldelad hanterad identitet

Ett kaosexperiment kan använda en användartilldelad hanterad identitet för att få tillräcklig behörighet för att mata in fel på experimentets målresurser. Dessutom kan användartilldelade hanterade identiteter användas i valfritt antal experiment i Chaos Studio. Om du vill använda den här funktionen måste du:

  • Skapa först en användartilldelad hanterad identitet i tjänsten Hanterade identiteter . Du kan tilldela den användartilldelade hanterade identiteten nödvändiga behörigheter för att köra dina kaosexperiment just nu.
  • För det andra väljer du en användartilldelad hanterad identitet från din prenumeration när du skapar ditt kaosexperiment. Du kan välja att aktivera anpassad rolltilldelning i det här steget. Om du aktiverar den här funktionen beviljas ditt identitetsval alla nödvändiga behörigheter som kan behövas baserat på felen i experimentet.
  • För det tredje, när du har lagt till alla dina fel i ditt kaosexperiment kan du granska om identitetskonfigurationen innehåller alla nödvändiga åtgärder för att ditt kaosexperiment ska kunna köras korrekt. Om den inte gör det kontaktar du systemadministratören för att få åtkomst till eller redigera experimentets felval.

Agentautentisering

När du kör agentbaserade fel måste du installera Chaos Studio-agenten på den virtuella datorn (VM) eller vm-skalningsuppsättningen. Agenten använder en användartilldelad hanterad identitet för att autentisera till Chaos Studio och en agentprofil för att upprätta en relation till en specifik VM-resurs.

När du registrerar en VM- eller VM-skalningsuppsättning för agentbaserade fel skapar du först ett agentmål. Agentmålet måste ha en referens till den användartilldelade hanterade identiteten som används för autentisering. Agentmålet innehåller ett agentprofil-ID som tillhandahålls som konfiguration när du installerar agenten. Agentprofiler är unika för varje mål och målen är unika per resurs.

Åtgärder och roller i Azure Resource Manager

Chaos Studio har följande åtgärder:

Operation beskrivning
Microsoft.Chaos/targets/[Read,Write,Delete] Hämta, skapa, uppdatera eller ta bort ett mål.
Microsoft.Chaos/targets/capabilities/[Read,Write,Delete] Hämta, skapa, uppdatera eller ta bort en funktion.
Microsoft.Chaos/locations/targetTypes/Read Hämta alla måltyper.
Microsoft.Chaos/locations/targetTypes/capabilityTypes/Read Hämta alla funktionstyper.
Microsoft.Chaos/experiments/[Read,Write,Delete] Hämta, skapa, uppdatera eller ta bort ett kaosexperiment.
Microsoft.Chaos/experiment/start/action Starta ett kaosexperiment.
Microsoft.Chaos/experiments/cancel/action Stoppa ett kaosexperiment.
Microsoft.Chaos/experiments/statuses/Read Hämta körningsstatus för en körning av ett kaosexperiment.
Microsoft.Chaos/experiments/executionDetails/Read Hämta körningsinformationen (status och fel för varje åtgärd) för en körning av ett kaosexperiment.

Om du vill tilldela dessa behörigheter i detalj kan du skapa en anpassad roll.

Nätverkssäkerhet

Alla användarinteraktioner med Chaos Studio sker via Azure Resource Manager. Om en användare startar ett experiment kan experimentet interagera med andra slutpunkter än Resource Manager, beroende på felet:

  • Tjänstdirigeringsfel: De flesta tjänstdirigeringsfel körs via Azure Resource Manager och kräver inga tillåtna nätverksslutpunkter.
  • Fel med tjänstdirigering av AKS Chaos Mesh: Tjänstdirigeringsfel för Azure Kubernetes Service som använder Chaos Mesh kräver åtkomst till AKS-klustrets Kubernetes API-server.
  • Agentbaserade fel: Om du vill använda agentbaserade fel behöver agenten åtkomst till Chaos Studio-agenttjänsten. En VM- eller VM-skalningsuppsättning måste ha utgående åtkomst till agenttjänstens slutpunkt för att agenten ska kunna ansluta. Agenttjänstens slutpunkt är https://acs-prod-<region>.chaosagent.trafficmanager.net. Du måste ersätta <region> platshållaren med den region där den virtuella datorn distribueras. Ett exempel är https://acs-prod-eastus.chaosagent.trafficmanager.net för en virtuell dator i USA, östra.
  • Agentbaserad privat nätverk: Chaos Studio-agenten har nu stöd för privata nätverk. Se Privat nätverk för Chaos Agent.

Tjänsttaggar

En tjänsttagg är en grupp MED IP-adressprefix som kan tilldelas till regler för inkommande och utgående trafik för nätverkssäkerhetsgrupper. Den hanterar automatiskt uppdateringar av gruppen med IP-adressprefix utan några åtgärder.

Du kan använda tjänsttaggar för att uttryckligen tillåta inkommande trafik från Chaos Studio utan att behöva känna till plattformens IP-adresser. Chaos Studios tjänsttagg är ChaosStudio.

En begränsning för tjänsttaggar är att de endast kan användas med program som har en offentlig IP-adress. Om en resurs bara har en privat IP-adress kan tjänsttaggar inte dirigera trafik till den.

Datakryptering

Chaos Studio krypterar alla data som standard. Chaos Studio accepterar endast indata för systemegenskaper som hanterade identitetsobjekt-ID:er, experiment-/steg-/grennamn och felparametrar. Ett exempel är det nätverksportintervall som ska blockeras i ett nätverksfel.

Dessa egenskaper ska inte användas för att lagra känsliga data, till exempel betalningsinformation eller lösenord. Mer information om hur Chaos Studio skyddar dina data finns i Azure-kundens dataskydd.

Customer Lockbox

Med Låsbox kan du godkänna eller avvisa Microsofts teknikerbegäran om att få åtkomst till dina experimentdata under en supportbegäran.

Lockbox kan aktiveras för information om kaosexperiment och behörighet att komma åt data beviljas av kunden på prenumerationsnivå om låsboxen är aktiverad.

Läs mer om Customer Lockbox för Microsoft Azure

Nästa steg

Nu när du förstår hur du skyddar ditt kaosexperiment är du redo att: