View a markdown version of this page

AWSSupport-TroubleshootIAMAccessDeniedEvents - AWS Systems Manager Riferimento al runbook dell’automazione

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

AWSSupport-TroubleshootIAMAccessDeniedEvents

Descrizione

Il runbook di AWSSupport-TroubleshootIAMAccessDeniedEvents automazione aiuta a risolvere i problemi di accesso negato AWS Identity and Access Management (IAM). Il runbook ricerca gli eventi di CloudTrail accesso negato recenti relativi all'entità IAM specificata e AWS all'origine degli eventi del servizio. Analizza gli eventi all'interno di una finestra temporale configurabile fino a 24 ore, elaborando fino a 10 eventi per esecuzione. Ogni evento di accesso negato identificato viene esaminato per aiutare a comprendere il contesto del rifiuto e le azioni tentate. L'automazione analizza le politiche IAM basate sull'identità e sulle risorse. Per le politiche basate sull'identità, esamina le politiche in linea e gestite collegate all'entità IAM. Per le politiche basate sulle risorse, valuta le politiche su più AWS servizi, tra cui Amazon Simple Storage Service (Amazon S3), AWS Key Management Service (AWS KMS) AWS Lambda, Amazon Simple Notification Service (Amazon SNS), Amazon Elastic Container Registry (Amazon ECR) CodeArtifact, Amazon API Gateway, Amazon Elastic File System (Amazon EFS), Amazon Simple Queue Service (Amazon SQS) AWS Cloud9, Amazon OpenSearch Service AWS Serverless Application Repository, AWS Signer e AWS Secrets Manager.

Il runbook utilizza le funzionalità di simulazione delle politiche IAM per valutare queste politiche rispetto alle azioni negate rilevate negli CloudTrail eventi. Il runbook sfrutta le funzionalità di simulazione delle politiche di IAM sia SimulatePrincipalPolicy per gli utenti IAM che SimulateCustomPolicy per i ruoli IAM per valutare queste politiche rispetto alle azioni negate rilevate negli eventi. CloudTrail L'automazione genera un report che aiuta a identificare le azioni specifiche che sono state negate, distinguendo tra negazioni implicite ed esplicite, elenca le politiche responsabili dei dinieghi di accesso e fornisce spiegazioni per ogni rifiuto. Il rapporto suggerisce anche potenziali soluzioni, come l'identificazione delle dichiarazioni di autorizzazione mancanti o delle dichiarazioni di rifiuto contrastanti

Come funziona?

Il runbook esegue i seguenti passaggi:

  • Descrive e convalida RequesterARN (ruolo o utente) per ottenere informazioni come il tipo di entità IAM e l'ID IAM.

  • Recupera CloudTrail gli eventi associati a, e RequesterARNEventSource, ResourceARN se forniti.

  • Analizza CloudTrail gli eventi per ottenere l'azione eseguita quando è stato restituito l'errore Access Denied, quindi esamina tutte le politiche IAM, ad esempio le politiche in linea e gestite collegate all'entità IAM, nonché le politiche basate sulle risorse. Quindi simula queste politiche rispetto alle azioni rilevate negli errori di accesso negato CloudTrail degli eventi in questione per determinare la causa dell'errore.

  • Genera un rapporto che determina il tipo di errore di accesso negato, le politiche responsabili degli errori e fornisce suggerimenti per una potenziale soluzione all'errore.

Esegui questa automazione (console)

Tipo di documento

Automazione

Proprietario

Amazon

Piattaforme

/

Autorizzazioni IAM richieste

Il AutomationAssumeRole parametro richiede le seguenti azioni per utilizzare correttamente il runbook.

  • apigateway:GetRestApis

  • cloudtrail:LookupEvents

  • cloud9:GetEnvironment

  • codeartifact:GetRepositoryPermissionsPolicy

  • ecr:GetRepositoryPolicy

  • elasticfilesystem:GetFileSystemPolicy

  • es:DescribeDomain

  • iam:GetPolicy

  • iam:GetPolicyVersion

  • iam:GetRole

  • iam:GetRolePolicy

  • iam:GetUser

  • iam:GetUserPolicy

  • iam:ListAttachedRolePolicies

  • iam:ListAttachedUserPolicies

  • iam:ListRolePolicies

  • iam:ListUserPolicies

  • iam:SimulatePrincipalPolicy

  • iam:SimulateCustomPolicy

  • kms:GetKeyPolicy

  • lambda:GetPolicy

  • secretsmanager:GetResourcePolicy

  • serverlessrepo:GetApplication

  • signer:GetSigningProfile

  • sns:GetTopicAttributes

  • ssm:StartAutomationExecution

  • ssm:StopAutomationExecution

  • sqs:GetQueueAttributes

  • s3:GetBucketPolicy

Esempio di politica:

JSON
{ "Version":"2012-10-17", "Statement": [ { "Action": [ "iam:GetUser", "iam:GetRole", "iam:SimulatePrincipalPolicy", "iam:ListUserPolicies", "iam:ListRolePolicies", "iam:GetRolePolicy", "iam:ListAttachedRolePolicies", "iam:GetPolicy", "iam:GetUserPolicy", "iam:GetPolicyVersion", "iam:ListAttachedUserPolicies", "ssm:StartAutomationExecution", "ssm:StopAutomationExecution", "cloudtrail:LookupEvents", "iam:SimulateCustomPolicy" ], "Resource": "*", "Effect": "Allow" }, { "Action": [ "s3:GetBucketPolicy", "kms:GetKeyPolicy", "lambda:GetPolicy", "sns:GetTopicAttributes", "ecr:GetRepositoryPolicy", "apigateway:GET", "codeartifact:GetRepositoryPermissionsPolicy", "elasticfilesystem:DescribeFileSystemPolicy", "sqs:GetQueueAttributes", "cloud9:DescribeEnvironmentStatus", "es:DescribeDomain", "signer:GetSigningProfile", "serverlessrepo:GetApplication", "secretsmanager:GetResourcePolicy" ], "Resource": "*", "Effect": "Allow" } ] }

Istruzioni

Segui questi passaggi per configurare l'automazione:

  1. Accedi AWSSupport-TroubleshootIAMAccessDeniedEvents a Systems Manager in Documenti.

  2. Seleziona Execute automation (Esegui automazione).

  3. Per i parametri di input, inserisci quanto segue:

    • AutomationAssumeRole (Facoltativo):

      • Descrizione: (Facoltativo) L'Amazon Resource Name (ARN) del ruolo AWS Identity and Access Management (IAM) che consente a SSM Automation di eseguire le azioni per tuo conto. Il ruolo deve essere aggiunto alla voce di accesso al cluster Amazon EKS o all'autorizzazione RBAC per consentire le chiamate API Kubernetes.

      • Tipo: AWS::IAM::Role::Arn

    • RequesterArn (obbligatorio):

      • Descrizione: (Obbligatorio) L'ARN dell'utente o del ruolo IAM per il quale si desidera esaminare le autorizzazioni di accesso su una risorsa specifica. AWS

      • Tipo: String

      • Schema di autorizzazione: ^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):iam::[0-9]{12}:(role|user)\\/[\\w+\\/=,.@-]+$

    • ResourceARN (opzionale):

      • Descrizione: (Facoltativo) L'ARN della risorsa per AWS la quale viene valutato l'accesso negato. La risorsa di AWS destinazione deve esistere nella stessa regione in cui viene eseguito il runbook di automazione.

      • Tipo: String

      • Permetti modello: ^$|^arn:(aws|aws-cn|aws-us-gov|aws-iso(-[a-z])?):([a-zA-Z0-9\\-]{1,63}):([a-z0-9\\-]{0,63})?:(\\d{12})?:([a-zA-Z0-9\\-_/:.]{1,1024})$

    • EventSource (Obbligatorio):

      • Descrizione: (Obbligatorio) L'endpoint dell'API Amazon da cui ha avuto origine l' CloudTrailevento. Ad esempio: s3.amazonaws.com.

      • Tipo: String

      • Permetti modello: ^([a-zA-Z0-9.-]+)\\.amazonaws\\.com$

    • EventName (Facoltativo):

      • Descrizione: (Facoltativo) Il nome dell'azione dell'API Amazon associato all' CloudTrail evento. Ad esempio: s3:CreateBucket.

      • Tipo: String

      • Permetti modello: ^$|^[a-z0-9]+:[A-Za-z0-9]+$

    • LookBackHours (Facoltativo):

      • Descrizione: (Facoltativo) Il numero di ore per esaminare gli CloudTrail eventi durante la ricerca di Access Denied eventi. Intervallo valido: 1 da 24 2 a ore.

      • Tipo: numero intero

      • Permetti modello: ^([1-9]|1[0-9]|2[0-4])$

      • Predefinito: 12

    • MaxEvents (Facoltativo):

      • Descrizione: (Facoltativo) Il numero massimo di CloudTrail Access Denied eventi restituiti durante la ricerca di eventi. Intervallo valido: 1 fino a 5 eventi.

      • Tipo: numero intero

      • Permetti modello: ^([1-9]|1[0-9]|2[0-4])$

      • Impostazione predefinita: 3

    • UseContextEntries (Facoltativo):

      • Descrizione: (Facoltativo) Se specifichitrue, l'automazione estrae i dettagli sul contesto della richiesta API dall' CloudTrail evento e li include per la simulazione delle politiche IAM.

      • Tipo: Booleano

      • Schema di autorizzazione: ^([1-9]|1[0-9]|2[0-4])$

      • Impostazione predefinita: 3

  4. Seleziona Esegui.

  5. L'automazione viene avviata.

  6. Il documento esegue i seguenti passaggi:

    • ValidateRequesterArn

      Convalida e decostruisce l'RequesterArnARN, recuperando informazioni sull'utente o sul ruolo IAM di destinazione.

    • GetCloudTrailEventsWithAccessDeniedError

      Interroga gli CloudTrail Access Denied eventi recenti relativi all'entità e al servizio IAM specificati. AWS EventSource

    • EvaluateIAMRequesterPolicies

      Valuta le autorizzazioni IAM dell'entità IAM richiedente rispetto alle azioni derivanti dagli eventi. CloudTrail Questa valutazione include l'analisi delle politiche basate sull'identità e sulle risorse associate al richiedente. L'automazione utilizza le funzionalità di simulazione delle politiche di IAM per valutare queste politiche nel contesto delle azioni negate identificate negli eventi. CloudTrail

  7. Una volta completato, consulta la sezione Output per i risultati dettagliati dell'esecuzione:

    • PermissionEvaluationResults

      Genera un rapporto che aiuta a identificare le azioni specifiche che sono state negate, distinguendo tra negazioni implicite ed esplicite. Elenca inoltre le politiche responsabili dei dinieghi di accesso e fornisce spiegazioni per ogni rifiuto. Il rapporto suggerisce anche possibili soluzioni, come l'identificazione delle dichiarazioni di autorizzazione mancanti o delle dichiarazioni di rifiuto contrastanti

Riferimenti

Systems Manager Automation