Machtigingen en beveiliging in Azure Chaos Studio

Met Azure Chaos Studio kunt u de servicetolerantie verbeteren door systematisch fouten in uw Azure-resources in te voegen. Foutinjectie is een krachtige manier om de servicetolerantie te verbeteren, maar het kan ook gevaarlijk zijn. Het veroorzaken van fouten in uw toepassing kan meer impact hebben dan oorspronkelijk bedoeld en open kansen voor kwaadwillende actoren om uw toepassingen te infiltreren.

Chaos Studio heeft een robuust machtigingsmodel dat voorkomt dat fouten onbedoeld of door een slechte actor worden uitgevoerd. In dit artikel leert u hoe u resources kunt beveiligen die zijn gericht op foutinjectie met behulp van Chaos Studio.

Hoe kan ik de mogelijkheid beperken om fouten met Chaos Studio te injecteren?

Chaos Studio heeft drie beveiligingsniveaus om te bepalen hoe en wanneer foutinjectie kan optreden tegen een resource:

  • Ten eerste is een chaos-experiment een Azure-resource die is geïmplementeerd in een regio, resourcegroep en abonnement. Gebruikers moeten over de juiste Azure Resource Manager-machtigingen beschikken om een experiment te maken, bij te werken, te starten, te annuleren, te verwijderen of weer te geven.

    Elke machtiging is een Resource Manager-bewerking die gedetailleerd kan worden toegewezen aan een identiteit of toegewezen als onderdeel van een rol met machtigingen voor jokertekens. De rol Inzender in Azure heeft */write bijvoorbeeld machtigingen voor het toegewezen bereik, inclusief Microsoft.Chaos/experiments/write machtigingen.

    Wanneer u probeert de mogelijkheid te bepalen om fouten op een resource te injecteren, is Microsoft.Chaos/experiments/start/actionde belangrijkste bewerking die u wilt beperken. Deze bewerking start een chaos-experiment dat fouten injecteert.

  • Ten tweede heeft een chaos-experiment een door het systeem toegewezen beheerde identiteit of een door de gebruiker toegewezen beheerde identiteit die fouten op een resource uitvoert. Als u ervoor kiest om een door het systeem toegewezen beheerde identiteit voor uw experiment te gebruiken, wordt de identiteit gemaakt tijdens het maken van het experiment in uw Microsoft Entra-tenant. Door de gebruiker toegewezen beheerde id's kunnen worden gebruikt voor een willekeurig aantal experimenten.

    In een chaos-experiment kunt u ervoor kiezen om aangepaste roltoewijzing in te schakelen voor uw door het systeem toegewezen of door de gebruiker toegewezen beheerde identiteit. Als u deze functionaliteit inschakelt, kan Chaos Studio een aangepaste rol maken en toewijzen die alle benodigde experimentactiemogelijkheden bevat voor de identiteit van uw experiment (die nog niet aanwezig zijn in uw identiteitsselectie). Als een chaos-experiment een door de gebruiker toegewezen beheerde identiteit gebruikt, blijven aangepaste rollen die zijn toegewezen aan de experimentidentiteit door Chaos Studio behouden na verwijdering van het experiment.

    Als u ervoor kiest om uw experimentmachtigingen handmatig te verlenen, moet u de identiteit de juiste machtigingen verlenen voor alle doelbronnen. Als de experimentidentiteit niet over de juiste machtigingen voor een resource beschikt, kan er geen fout worden uitgevoerd op die resource.

  • Ten derde moet elke resource worden ge onboardd naar Chaos Studio als doel waarvoor de bijbehorende mogelijkheden zijn ingeschakeld. Als een doel of de mogelijkheid voor de fout die wordt uitgevoerd niet bestaat, mislukt het experiment zonder dat dit van invloed is op de resource.

Door de gebruiker toegewezen beheerde identiteit

Een chaos-experiment kan gebruikmaken van een door de gebruiker toegewezen beheerde identiteit om voldoende machtigingen te verkrijgen om fouten op de doelbronnen van het experiment in te voeren. Daarnaast kunnen door de gebruiker toegewezen beheerde identiteiten worden gebruikt voor een willekeurig aantal experimenten in Chaos Studio. Als u deze functionaliteit wilt gebruiken, moet u het volgende doen:

  • Maak eerst een door de gebruiker toegewezen beheerde identiteit in de service Beheerde identiteiten . U kunt uw door de gebruiker toegewezen beheerde identiteit de vereiste machtigingen toewijzen om uw chaos-experiment(s) op dit moment uit te voeren.
  • Ten tweede selecteert u bij het maken van uw chaos-experiment een door de gebruiker toegewezen beheerde identiteit uit uw abonnement. U kunt ervoor kiezen om aangepaste roltoewijzing in te schakelen in deze stap. Als u deze functionaliteit inschakelt, verleent u uw identiteitsselectie alle vereiste machtigingen die nodig zijn op basis van de fouten in uw experiment.
  • Controleer ten derde, nadat u al uw fouten aan uw chaos-experiment hebt toegevoegd, of uw identiteitsconfiguratie alle benodigde acties bevat om uw chaosexperiment succesvol uit te voeren. Als dit niet het geval is, neemt u contact op met de systeembeheerder voor toegang tot of het bewerken van de foutselecties van uw experiment.

Agentverificatie

Wanneer u op agents gebaseerde fouten uitvoert, moet u de Chaos Studio-agent installeren op uw virtuele machine (VM) of virtuele-machineschaalset. De agent gebruikt een door de gebruiker toegewezen beheerde identiteit om te verifiëren bij Chaos Studio en een agentprofiel om een relatie tot stand te brengen met een specifieke VM-resource.

Wanneer u een VM of virtuele-machineschaalset onboardt voor fouten op basis van agents, maakt u eerst een agentdoel. Het agentdoel moet een verwijzing hebben naar de door de gebruiker toegewezen beheerde identiteit die wordt gebruikt voor verificatie. Het agentdoel bevat een agentprofiel-id, die wordt geleverd als configuratie wanneer u de agent installeert. Agentprofielen zijn uniek voor elk doel en doelen zijn uniek per resource.

Azure Resource Manager-bewerkingen en -rollen

Chaos Studio heeft de volgende bewerkingen:

Operation Omschrijving
Microsoft.Chaos/targets/[Lezen,Schrijven,Verwijderen] Een doel ophalen, maken, bijwerken of verwijderen.
Microsoft.Chaos/targets/capabilities/[Lezen,Schrijven,Verwijderen] Een mogelijkheid ophalen, maken, bijwerken of verwijderen.
Microsoft.Chaos/locations/targetTypes/Read Haal alle doeltypen op.
Microsoft.Chaos/locations/targetTypes/capabilityTypes/Read Alle mogelijkheidstypen ophalen.
Microsoft.Chaos/experimenten/[Lezen,Schrijven,Verwijderen] Een chaos-experiment ophalen, maken, bijwerken of verwijderen.
Microsoft.Chaos/experimenten/start/action Begin een chaos-experiment.
Microsoft.Chaos/experimenten/annuleren/actie Stop een chaos-experiment.
Microsoft.Chaos/experimenten/statussen/Lezen Haal de uitvoeringsstatus op voor een uitvoering van een chaos-experiment.
Microsoft.Chaos/experimenten/executionDetails/Read Haal de uitvoeringsdetails (status en fouten voor elke actie) op voor een uitvoering van een chaos-experiment.

Als u deze machtigingen gedetailleerd wilt toewijzen, kunt u een aangepaste rol maken.

Netwerkbeveiliging

Alle gebruikersinteracties met Chaos Studio vinden plaats via Azure Resource Manager. Als een gebruiker een experiment start, kan het experiment communiceren met andere eindpunten dan Resource Manager, afhankelijk van de fout:

  • Service-directe fouten: de meeste service-directe fouten worden uitgevoerd via Azure Resource Manager en vereisen geen toegestane netwerkeindpunten op de lijst.
  • Service-directe AKS Chaos Mesh-fouten: Service-directe fouten voor Azure Kubernetes Service waarvoor Chaos Mesh wordt gebruikt, vereisen toegang tot de Kubernetes-API-server van het AKS-cluster.
  • Fouten op basis van agents: als u op agents gebaseerde fouten wilt gebruiken, moet de agent toegang hebben tot de Chaos Studio-agentservice. Een VM of virtuele-machineschaalset moet uitgaande toegang hebben tot het service-eindpunt van de agent om verbinding te kunnen maken met de agent. Het service-eindpunt van de agent is https://acs-prod-<region>.chaosagent.trafficmanager.net. U moet de <region> tijdelijke aanduiding vervangen door de regio waar uw VIRTUELE machine is geïmplementeerd. Een voorbeeld hiervan is https://acs-prod-eastus.chaosagent.trafficmanager.net voor een VIRTUELE machine in VS - oost.
  • Privénetwerken op basis van agents: de Chaos Studio-agent ondersteunt nu privénetwerken. Zie Privénetwerken voor Chaos Agent.

Servicetags

Een servicetag is een groep IP-adresvoorvoegsels die kunnen worden toegewezen aan inkomende en uitgaande regels voor netwerkbeveiligingsgroepen. Het verwerkt automatisch updates van de groep IP-adresvoorvoegsels zonder tussenkomst.

U kunt servicetags gebruiken om binnenkomend verkeer vanuit Chaos Studio expliciet toe te staan zonder dat u de IP-adressen van het platform hoeft te kennen. Chaos Studio's servicetag is ChaosStudio.

Een beperking van servicetags is dat ze alleen kunnen worden gebruikt met toepassingen die een openbaar IP-adres hebben. Als een resource alleen een privé-IP-adres heeft, kunnen servicetags er geen verkeer naar routeren.

Gegevensversleuteling

Chaos Studio versleutelt standaard alle gegevens. Chaos Studio accepteert alleen invoer voor systeemeigenschappen, zoals id's van beheerde identiteitsobjecten, experiment-/stap-/vertakkingsnamen en foutparameters. Een voorbeeld is het netwerkpoortbereik dat moet worden geblokkeerd in een netwerkverbindingsfout.

Deze eigenschappen mogen niet worden gebruikt voor het opslaan van gevoelige gegevens, zoals betalingsgegevens of wachtwoorden. Zie Azure-klantgegevensbescherming voor meer informatie over hoe Chaos Studio uw gegevens beveiligt.

Klanten-lockbox

Lockbox geeft u het beheer om microsoft-engineeraanvraag goed te keuren of af te wijzen voor toegang tot uw experimentgegevens tijdens een ondersteuningsaanvraag.

Lockbox kan worden ingeschakeld voor informatie over chaos-experimenten en machtigingen voor toegang tot gegevens worden verleend door de klant op abonnementsniveau als lockbox is ingeschakeld.

Meer informatie over Customer Lockbox voor Microsoft Azure

Volgende stappen

Nu u begrijpt hoe u uw chaos-experiment kunt beveiligen, kunt u het volgende doen: