IAMEjemplos de Access Analyzer utilizando AWS CLI - AWS Command Line Interface

Esta documentación es AWS CLI únicamente para la versión 1 de la versión. Para ver la documentación relacionada con la versión 2 de AWS CLI, consulte la Guía del usuario de la versión 2.

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

IAMEjemplos de Access Analyzer utilizando AWS CLI

Los siguientes ejemplos de código muestran cómo realizar acciones e implementar escenarios comunes mediante el AWS Command Line Interface uso de IAM Access Analyzer.

Las acciones son extractos de código de programas más grandes y deben ejecutarse en contexto. Mientras las acciones muestran cómo llamar a las funciones de servicio individuales, es posible ver las acciones en contexto en los escenarios relacionados.

Cada ejemplo incluye un enlace al código fuente completo, donde puede encontrar instrucciones sobre cómo configurar y ejecutar el código en su contexto.

Acciones

El siguiente ejemplo de código muestra cómo usarloapply-archive-rule.

AWS CLI

Para aplicar una regla de archivado a los hallazgos existentes que cumplen los criterios de la regla de archivado

En el siguiente apply-archive-rule ejemplo, se aplica una regla de archivado a los hallazgos existentes que cumplen los criterios de la regla de archivado.

aws accessanalyzer apply-archive-rule \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/UnusedAccess-ConsoleAnalyzer-organization \ --rule-name MyArchiveRule

Este comando no genera ninguna salida.

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte ApplyArchiveRulela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocancel-policy-generation.

AWS CLI

Para cancelar la generación de políticas solicitada

El siguiente cancel-policy-generation ejemplo cancela el identificador del trabajo de generación de políticas solicitado.

aws accessanalyzer cancel-policy-generation \ --job-id 923a56b0-ebb8-4e80-8a3c-a11ccfbcd6f2

Este comando no genera ninguna salida.

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAMusuario.

El siguiente ejemplo de código muestra cómo usarlocheck-access-not-granted.

AWS CLI

Para comprobar si una política no permite el acceso especificado

El siguiente check-access-not-granted ejemplo comprueba si una política no permite el acceso especificado.

aws accessanalyzer check-access-not-granted \ --policy-document file://myfile.json \ --access actions="s3:DeleteBucket","s3:GetBucketLocation" \ --policy-type IDENTITY_POLICY

Contenidos de myfile.json:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ] } ] }

Salida:

{ "result": "PASS", "message": "The policy document does not grant access to perform one or more of the listed actions." }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del AWS IAMusuario.

El siguiente ejemplo de código muestra cómo usarlocheck-no-new-access.

AWS CLI

Para comprobar si se permite un nuevo acceso a una política actualizada en comparación con la política existente

El siguiente check-no-new-access ejemplo comprueba si se permite un nuevo acceso para una política actualizada en comparación con la política existente.

aws accessanalyzer check-no-new-access \ --existing-policy-document file://existing-policy.json \ --new-policy-document file://new-policy.json \ --policy-type IDENTITY_POLICY

Contenidos de existing-policy.json:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ] } ] }

Contenidos de new-policy.json:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectAcl", "s3:ListBucket" ], "Resource": [ "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "arn:aws:s3:::DOC-EXAMPLE-BUCKET/*" ] } ] }

Salida:

{ "result": "FAIL", "message": "The modified permissions grant new access compared to your existing policy.", "reasons": [ { "description": "New access in the statement with index: 0.", "statementIndex": 0 } ] }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte la Referencia CheckNoNewAccessde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocheck-no-public-access.

AWS CLI

Para comprobar si una política de recursos puede conceder acceso público al tipo de recurso especificado

El siguiente check-no-public-access ejemplo comprueba si una política de recursos puede conceder acceso público al tipo de recurso especificado.

aws accessanalyzer check-no-public-access \ --policy-document file://check-no-public-access-myfile.json \ --resource-type AWS::S3::Bucket

Contenidos de myfile.json:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CheckNoPublicAccess", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::111122223333:user/JohnDoe" }, "Action": [ "s3:GetObject" ] } ] }

Salida:

{ "result": "PASS", "message": "The resource policy does not grant public access for the given resource type." }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte la Referencia CheckNoPublicAccessde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-access-preview.

AWS CLI

Para crear una vista previa de acceso que le permita obtener una vista previa de los resultados de IAM Access Analyzer para su recurso antes de implementar los permisos del recurso

En el siguiente create-access-preview ejemplo, se crea una vista previa del acceso que le permite obtener una vista previa de los resultados de IAM Access Analyzer para su recurso antes de implementar los permisos de recursos en su AWS cuenta.

aws accessanalyzer create-access-preview \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --configurations file://myfile.json

Contenidos de myfile.json:

{ "arn:aws:s3:::DOC-EXAMPLE-BUCKET": { "s3Bucket": { "bucketPolicy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":[\"arn:aws:iam::111122223333:root\"]},\"Action\":[\"s3:PutObject\",\"s3:PutObjectAcl\"],\"Resource\":\"arn:aws:s3:::DOC-EXAMPLE-BUCKET/*\"}]}", "bucketPublicAccessBlock": { "ignorePublicAcls": true, "restrictPublicBuckets": true }, "bucketAclGrants": [ { "grantee": { "id": "79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be" }, "permission": "READ" } ] } } }

Salida:

{ "id": "3c65eb13-6ef9-4629-8919-a32043619e6b" }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte la Referencia CreateAccessPreviewde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-analyzer.

AWS CLI

Para crear un analizador

En el siguiente create-analyzer ejemplo, se crea un analizador en su cuenta. AWS

aws accessanalyzer create-analyzer \ --analyzer-name example \ --type ACCOUNT

Salida:

{ "arn": "arn:aws:access-analyzer:us-east-2:111122223333:analyzer/example" }

Para obtener más información, consulte Introducción a AWS Identity and Access Management Access Analyzer en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte CreateAnalyzerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlocreate-archive-rule.

AWS CLI

Para crear una regla de archivo para el analizador especificado

En el siguiente create-archive-rule ejemplo, se crea una regla de archivo para el analizador especificado en su AWS cuenta.

aws accessanalyzer create-archive-rule \ --analyzer-name UnusedAccess-ConsoleAnalyzer-organization \ --rule-name MyRule \ --filter '{"resource": {"contains": ["Cognito"]}, "resourceType": {"eq": ["AWS::IAM::Role"]}}'

Este comando no genera ninguna salida.

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte CreateArchiveRulela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-analyzer.

AWS CLI

Para eliminar el analizador especificado

En el siguiente delete-analyzer ejemplo, se elimina el analizador especificado de su cuenta. AWS

aws accessanalyzer delete-analyzer \ --analyzer-name example

Este comando no genera ninguna salida.

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte DeleteAnalyzerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlodelete-archive-rule.

AWS CLI

Para eliminar la regla de archivado especificada

En el siguiente delete-archive-rule ejemplo, se elimina la regla de archivo especificada de su AWS cuenta.

aws accessanalyzer delete-archive-rule \ --analyzer-name UnusedAccess-ConsoleAnalyzer-organization \ --rule-name MyRule

Este comando no genera ninguna salida.

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte DeleteArchiveRulela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-access-preview.

AWS CLI

Para recuperar información sobre una vista previa de acceso para el analizador especificado

En el siguiente get-access-preview ejemplo, se recupera información sobre una vista previa del acceso al analizador especificado en su cuenta. AWS

aws accessanalyzer get-access-preview \ --access-preview-id 3c65eb13-6ef9-4629-8919-a32043619e6b \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account

Salida:

{ "accessPreview": { "id": "3c65eb13-6ef9-4629-8919-a32043619e6b", "analyzerArn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account", "configurations": { "arn:aws:s3:::DOC-EXAMPLE-BUCKET": { "s3Bucket": { "bucketPolicy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Effect\":\"Allow\",\"Principal\":{\"AWS\":[\"arn:aws:iam::111122223333:root\"]},\"Action\":[\"s3:PutObject\",\"s3:PutObjectAcl\"],\"Resource\":\"arn:aws:s3:::DOC-EXAMPLE-BUCKET/*\"}]}", "bucketAclGrants": [ { "permission": "READ", "grantee": { "id": "79a59df900b949e55d96a1e698fbacedfd6e09d98eacf8f8d5218e7cd47ef2be" } } ], "bucketPublicAccessBlock": { "ignorePublicAcls": true, "restrictPublicBuckets": true } } } }, "createdAt": "2024-02-17T00:18:44+00:00", "status": "COMPLETED" } }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del usuario.AWS IAM

  • Para API obtener más información, consulte la Referencia GetAccessPreviewde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-analyzed-resource.

AWS CLI

Para recuperar información sobre un recurso que se analizó

En el siguiente get-analyzed-resource ejemplo, se recupera información sobre un recurso que se analizó en su AWS cuenta.

aws accessanalyzer get-analyzed-resource \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --resource-arn arn:aws:s3:::DOC-EXAMPLE-BUCKET

Salida:

{ "resource": { "analyzedAt": "2024-02-15T18:01:53.002000+00:00", "isPublic": false, "resourceArn": "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "resourceOwnerAccount": "111122223333", "resourceType": "AWS::S3::Bucket" } }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte GetAnalyzedResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-analyzer.

AWS CLI

Para recuperar información sobre el analizador especificado

En el siguiente get-analyzer ejemplo, se recupera información sobre el analizador especificado en su cuenta. AWS

aws accessanalyzer get-analyzer \ --analyzer-name ConsoleAnalyzer-account

Salida:

{ "analyzer": { "arn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account", "createdAt": "2019-12-03T07:28:17+00:00", "lastResourceAnalyzed": "arn:aws:sns:us-west-2:111122223333:config-topic", "lastResourceAnalyzedAt": "2024-02-15T18:01:53.003000+00:00", "name": "ConsoleAnalyzer-account", "status": "ACTIVE", "tags": { "auto-delete": "no" }, "type": "ACCOUNT" } }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte GetAnalyzerla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-archive-rule.

AWS CLI

Para recuperar información sobre una regla de archivado

En el siguiente get-archive-rule ejemplo, se recupera información sobre una regla de archivo de su AWS cuenta.

aws accessanalyzer get-archive-rule \ --analyzer-name UnusedAccess-ConsoleAnalyzer-organization \ --rule-name MyArchiveRule

Salida:

{ "archiveRule": { "createdAt": "2024-02-15T00:49:27+00:00", "filter": { "resource": { "contains": [ "Cognito" ] }, "resourceType": { "eq": [ "AWS::IAM::Role" ] } }, "ruleName": "MyArchiveRule", "updatedAt": "2024-02-15T00:49:27+00:00" } }

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte GetArchiveRulela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-finding-v2.

AWS CLI

Para recuperar información sobre el hallazgo especificado

En el siguiente get-finding-v2 ejemplo, se recupera información sobre el hallazgo especificado en su AWS cuenta.

aws accessanalyzer get-finding-v2 \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-organization \ --id 0910eedb-381e-4e95-adda-0d25c19e6e90

Salida:

{ "findingDetails": [ { "externalAccessDetails": { "action": [ "sts:AssumeRoleWithWebIdentity" ], "condition": { "cognito-identity.amazonaws.com:aud": "us-west-2:EXAMPLE0-0000-0000-0000-000000000000" }, "isPublic": false, "principal": { "Federated": "cognito-identity.amazonaws.com" } } } ], "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolAuth_Role", "status": "ACTIVE", "error": null, "createdAt": "2021-02-26T21:17:50.905000+00:00", "resourceType": "AWS::IAM::Role", "findingType": "ExternalAccess", "resourceOwnerAccount": "111122223333", "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "id": "0910eedb-381e-4e95-adda-0d25c19e6e90", "updatedAt": "2021-02-26T21:17:50.905000+00:00" }

Para obtener más información, consulte Revisión de los resultados en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte la sección GetFindingV2 en la Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-finding.

AWS CLI

Para recuperar información sobre el hallazgo especificado

En el siguiente get-finding ejemplo, se recupera información sobre el hallazgo especificado en su AWS cuenta.

aws accessanalyzer get-finding \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-organization \ --id 0910eedb-381e-4e95-adda-0d25c19e6e90

Salida:

{ "finding": { "id": "0910eedb-381e-4e95-adda-0d25c19e6e90", "principal": { "Federated": "cognito-identity.amazonaws.com" }, "action": [ "sts:AssumeRoleWithWebIdentity" ], "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolAuth_Role", "isPublic": false, "resourceType": "AWS::IAM::Role", "condition": { "cognito-identity.amazonaws.com:aud": "us-west-2:EXAMPLE0-0000-0000-0000-000000000000" }, "createdAt": "2021-02-26T21:17:50.905000+00:00", "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "updatedAt": "2021-02-26T21:17:50.905000+00:00", "status": "ACTIVE", "resourceOwnerAccount": "111122223333" } }

Para obtener más información, consulte Revisión de los resultados en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte GetFindingla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloget-generated-policy.

AWS CLI

Para recuperar la política que se generó mediante `StartPolicyGeneration` API

En el siguiente get-generated-policy ejemplo, se recupera la política que se generó con la StartPolicyGeneration API de su AWS cuenta.

aws accessanalyzer get-generated-policy \ --job-id c557dc4a-0338-4489-95dd-739014860ff9

Salida:

{ "generatedPolicyResult": { "generatedPolicies": [ { "policy": "{\"Version\":\"2012-10-17\",\"Statement\":[{\"Sid\":\"SupportedServiceSid0\",\"Effect\":\"Allow\",\"Action\":[\"access-analyzer:GetAnalyzer\",\"access-analyzer:ListAnalyzers\",\"access-analyzer:ListArchiveRules\",\"access-analyzer:ListFindings\",\"cloudtrail:DescribeTrails\",\"cloudtrail:GetEventDataStore\",\"cloudtrail:GetEventSelectors\",\"cloudtrail:GetInsightSelectors\",\"cloudtrail:GetTrailStatus\",\"cloudtrail:ListChannels\",\"cloudtrail:ListEventDataStores\",\"cloudtrail:ListQueries\",\"cloudtrail:ListTags\",\"cloudtrail:LookupEvents\",\"ec2:DescribeRegions\",\"iam:GetAccountSummary\",\"iam:GetOpenIDConnectProvider\",\"iam:GetRole\",\"iam:ListAccessKeys\",\"iam:ListAccountAliases\",\"iam:ListOpenIDConnectProviders\",\"iam:ListRoles\",\"iam:ListSAMLProviders\",\"kms:ListAliases\",\"s3:GetBucketLocation\",\"s3:ListAllMyBuckets\"],\"Resource\":\"*\"}]}" } ], "properties": { "cloudTrailProperties": { "endTime": "2024-02-14T22:44:40+00:00", "startTime": "2024-02-13T00:30:00+00:00", "trailProperties": [ { "allRegions": true, "cloudTrailArn": "arn:aws:cloudtrail:us-west-2:111122223333:trail/my-trail", "regions": [] } ] }, "isComplete": false, "principalArn": "arn:aws:iam::111122223333:role/Admin" } }, "jobDetails": { "completedOn": "2024-02-14T22:47:01+00:00", "jobId": "c557dc4a-0338-4489-95dd-739014860ff9", "startedOn": "2024-02-14T22:44:41+00:00", "status": "SUCCEEDED" } }

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte GetGeneratedPolicyla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-access-preview-findings.

AWS CLI

Para recuperar una lista de los resultados de la vista previa de acceso generados por la vista previa de acceso especificada

En el siguiente list-access-preview-findings ejemplo, se recupera una lista de los resultados de la vista previa de acceso generada por la vista previa de acceso especificada en su AWS cuenta.

aws accessanalyzer list-access-preview-findings \ --access-preview-id 3c65eb13-6ef9-4629-8919-a32043619e6b \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account

Salida:

{ "findings": [ { "id": "e22fc158-1c87-4c32-9464-e7f405ce8d74", "principal": { "AWS": "111122223333" }, "action": [ "s3:PutObject", "s3:PutObjectAcl" ], "condition": {}, "resource": "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "isPublic": false, "resourceType": "AWS::S3::Bucket", "createdAt": "2024-02-17T00:18:46+00:00", "changeType": "NEW", "status": "ACTIVE", "resourceOwnerAccount": "111122223333", "sources": [ { "type": "POLICY" } ] } ] }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del AWS IAM usuario.

El siguiente ejemplo de código muestra cómo usarlolist-access-previews.

AWS CLI

Para recuperar una lista de vistas previas de acceso del analizador especificado

En el siguiente list-access-previews ejemplo, se recupera una lista de vistas previas de acceso del analizador especificado en su cuenta. AWS

aws accessanalyzer list-access-previews \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account

Salida:

{ "accessPreviews": [ { "id": "3c65eb13-6ef9-4629-8919-a32043619e6b", "analyzerArn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account", "createdAt": "2024-02-17T00:18:44+00:00", "status": "COMPLETED" } ] }

Para obtener más información, consulte Vista previa del acceso con IAM Access Analyzer APIs en la Guía del usuario.AWS IAM

  • Para API obtener más información, consulte la Referencia ListAccessPreviewsde AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-analyzed-resources.

AWS CLI

Para enumerar los widgets disponibles

En el siguiente list-analyzed-resources ejemplo, se enumeran los widgets disponibles en su AWS cuenta.

aws accessanalyzer list-analyzed-resources \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --resource-type AWS::IAM::Role

Salida:

{ "analyzedResources": [ { "resourceArn": "arn:aws:sns:us-west-2:111122223333:Validation-Email", "resourceOwnerAccount": "111122223333", "resourceType": "AWS::SNS::Topic" }, { "resourceArn": "arn:aws:sns:us-west-2:111122223333:admin-alerts", "resourceOwnerAccount": "111122223333", "resourceType": "AWS::SNS::Topic" }, { "resourceArn": "arn:aws:sns:us-west-2:111122223333:config-topic", "resourceOwnerAccount": "111122223333", "resourceType": "AWS::SNS::Topic" }, { "resourceArn": "arn:aws:sns:us-west-2:111122223333:inspector-topic", "resourceOwnerAccount": "111122223333", "resourceType": "AWS::SNS::Topic" } ] }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

El siguiente ejemplo de código muestra cómo usarlolist-analyzers.

AWS CLI

Para recuperar una lista de analizadores

En el siguiente list-analyzers ejemplo, se recupera una lista de los analizadores de su cuenta. AWS

aws accessanalyzer list-analyzers

Salida:

{ "analyzers": [ { "arn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/UnusedAccess-ConsoleAnalyzer-organization", "createdAt": "2024-02-15T00:46:40+00:00", "name": "UnusedAccess-ConsoleAnalyzer-organization", "status": "ACTIVE", "tags": { "auto-delete": "no" }, "type": "ORGANIZATION_UNUSED_ACCESS" }, { "arn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-organization", "createdAt": "2020-04-25T07:43:28+00:00", "lastResourceAnalyzed": "arn:aws:s3:::DOC-EXAMPLE-BUCKET", "lastResourceAnalyzedAt": "2024-02-15T21:51:56.517000+00:00", "name": "ConsoleAnalyzer-organization", "status": "ACTIVE", "tags": { "auto-delete": "no" }, "type": "ORGANIZATION" }, { "arn": "arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account", "createdAt": "2019-12-03T07:28:17+00:00", "lastResourceAnalyzed": "arn:aws:sns:us-west-2:111122223333:config-topic", "lastResourceAnalyzedAt": "2024-02-15T18:01:53.003000+00:00", "name": "ConsoleAnalyzer-account", "status": "ACTIVE", "tags": { "auto-delete": "no" }, "type": "ACCOUNT" } ] }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte ListAnalyzersla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-archive-rules.

AWS CLI

Para recuperar una lista de reglas de archivo creadas para el analizador especificado

El siguiente list-archive-rules ejemplo recupera una lista de reglas de archivo creadas para el analizador especificado en su cuenta. AWS

aws accessanalyzer list-archive-rules \ --analyzer-name UnusedAccess-ConsoleAnalyzer-organization

Salida:

{ "archiveRules": [ { "createdAt": "2024-02-15T00:49:27+00:00", "filter": { "resource": { "contains": [ "Cognito" ] }, "resourceType": { "eq": [ "AWS::IAM::Role" ] } }, "ruleName": "MyArchiveRule", "updatedAt": "2024-02-15T00:49:27+00:00" }, { "createdAt": "2024-02-15T23:27:45+00:00", "filter": { "findingType": { "eq": [ "UnusedIAMUserAccessKey" ] } }, "ruleName": "ArchiveRule-56125a39-e517-4ff8-afb1-ef06f58db612", "updatedAt": "2024-02-15T23:27:45+00:00" } ] }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte ListArchiveRulesla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-findings-v2.

AWS CLI

Para recuperar una lista de los resultados generados por el analizador especificado

En el siguiente list-findings-v2 ejemplo, se recupera una lista de los resultados generados por el analizador especificado en su cuenta. AWS En este ejemplo, se filtran los resultados para incluir solo las IAM funciones cuyo nombre contenga. Cognito

aws accessanalyzer list-findings-v2 \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --filter '{"resource": {"contains": ["Cognito"]}, "resourceType": {"eq": ["AWS::IAM::Role"]}}'

Salida:

{ "findings": [ { "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "createdAt": "2021-02-26T21:17:24.710000+00:00", "id": "597f3bc2-3adc-4c18-9879-5c4b23485e46", "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolUnauth_Role", "resourceType": "AWS::IAM::Role", "resourceOwnerAccount": "111122223333", "status": "ACTIVE", "updatedAt": "2021-02-26T21:17:24.710000+00:00", "findingType": "ExternalAccess" }, { "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "createdAt": "2021-02-26T21:17:50.905000+00:00", "id": "ce0e221a-85b9-4d52-91ff-d7678075442f", "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolAuth_Role", "resourceType": "AWS::IAM::Role", "resourceOwnerAccount": "111122223333", "status": "ACTIVE", "updatedAt": "2021-02-26T21:17:50.905000+00:00", "findingType": "ExternalAccess" } ] }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte la sección ListFindingsV2 en la Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-findings.

AWS CLI

Para recuperar una lista de los resultados generados por el analizador especificado

En el siguiente list-findings ejemplo, se recupera una lista de los resultados generados por el analizador especificado en su cuenta. AWS En este ejemplo, se filtran los resultados para incluir solo las IAM funciones cuyo nombre contenga. Cognito

aws accessanalyzer list-findings \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --filter '{"resource": {"contains": ["Cognito"]}, "resourceType": {"eq": ["AWS::IAM::Role"]}}'

Salida:

{ "findings": [ { "id": "597f3bc2-3adc-4c18-9879-5c4b23485e46", "principal": { "Federated": "cognito-identity.amazonaws.com" }, "action": [ "sts:AssumeRoleWithWebIdentity" ], "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolUnauth_Role", "isPublic": false, "resourceType": "AWS::IAM::Role", "condition": { "cognito-identity.amazonaws.com:aud": "us-west-2:EXAMPLE0-0000-0000-0000-000000000000" }, "createdAt": "2021-02-26T21:17:24.710000+00:00", "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "updatedAt": "2021-02-26T21:17:24.710000+00:00", "status": "ACTIVE", "resourceOwnerAccount": "111122223333" }, { "id": "ce0e221a-85b9-4d52-91ff-d7678075442f", "principal": { "Federated": "cognito-identity.amazonaws.com" }, "action": [ "sts:AssumeRoleWithWebIdentity" ], "resource": "arn:aws:iam::111122223333:role/Cognito_testpoolAuth_Role", "isPublic": false, "resourceType": "AWS::IAM::Role", "condition": { "cognito-identity.amazonaws.com:aud": "us-west-2:EXAMPLE0-0000-0000-0000-000000000000" }, "createdAt": "2021-02-26T21:17:50.905000+00:00", "analyzedAt": "2024-02-16T18:17:47.888000+00:00", "updatedAt": "2021-02-26T21:17:50.905000+00:00", "status": "ACTIVE", "resourceOwnerAccount": "111122223333" } ] }

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte ListFindingsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlolist-policy-generations.

AWS CLI

Para enumerar todas las generaciones de políticas solicitadas en los últimos siete días

En el siguiente list-policy-generations ejemplo, se enumeran todas las generaciones de políticas solicitadas en los últimos siete días en su AWS cuenta.

aws accessanalyzer list-policy-generations

Salida:

{ "policyGenerations": [ { "completedOn": "2024-02-14T23:43:38+00:00", "jobId": "923a56b0-ebb8-4e80-8a3c-a11ccfbcd6f2", "principalArn": "arn:aws:iam::111122223333:role/Admin", "startedOn": "2024-02-14T23:43:02+00:00", "status": "CANCELED" }, { "completedOn": "2024-02-14T22:47:01+00:00", "jobId": "c557dc4a-0338-4489-95dd-739014860ff9", "principalArn": "arn:aws:iam::111122223333:role/Admin", "startedOn": "2024-02-14T22:44:41+00:00", "status": "SUCCEEDED" } ] }

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAM usuario.

El siguiente ejemplo de código muestra cómo usarlolist-tags-for-resource.

AWS CLI

Para recuperar una lista de etiquetas aplicadas al recurso especificado

En el siguiente list-tags-for-resource ejemplo, se recupera una lista de etiquetas aplicadas al recurso especificado de su AWS cuenta.

aws accessanalyzer list-tags-for-resource \ --resource-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account

Salida:

{ "tags": { "Zone-of-trust": "Account", "Name": "ConsoleAnalyzer" } }

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte ListTagsForResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlostart-policy-generation.

AWS CLI

Para iniciar una solicitud de generación de políticas

En el siguiente start-policy-generation ejemplo, se inicia una solicitud de generación de políticas en su AWS cuenta.

aws accessanalyzer start-policy-generation \ --policy-generation-details '{"principalArn":"arn:aws:iam::111122223333:role/Admin"}' \ --cloud-trail-details file://myfile.json

Contenidos de myfile.json:

{ "accessRole": "arn:aws:iam::111122223333:role/service-role/AccessAnalyzerMonitorServiceRole", "startTime": "2024-02-13T00:30:00Z", "trails": [ { "allRegions": true, "cloudTrailArn": "arn:aws:cloudtrail:us-west-2:111122223333:trail/my-trail" } ] }

Salida:

{ "jobId": "c557dc4a-0338-4489-95dd-739014860ff9" }

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAM usuario.

El siguiente ejemplo de código muestra cómo usarlostart-resource-scan.

AWS CLI

Para iniciar inmediatamente un análisis de las políticas aplicadas al recurso especificado

En el siguiente start-resource-scan ejemplo, se inicia inmediatamente un análisis de las políticas aplicadas al recurso especificado en su AWS cuenta.

aws accessanalyzer start-resource-scan \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --resource-arn arn:aws:iam::111122223333:role/Cognito_testpoolAuth_Role

Este comando no genera ninguna salida.

Para obtener más información, consulte la sección Generación de políticas de IAM Access Analyzer en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte StartResourceScanla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlotag-resource.

AWS CLI

Para añadir una etiqueta al recurso especificado

En el siguiente tag-resource ejemplo, se agrega una etiqueta al recurso especificado de la AWS cuenta.

aws accessanalyzer tag-resource \ --resource-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --tags Environment=dev,Purpose=testing

Este comando no genera ninguna salida.

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte TagResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlountag-resource.

AWS CLI

Para eliminar etiquetas de los recursos especificados

En el siguiente untag-resource ejemplo, se eliminan las etiquetas del recurso especificado de la AWS cuenta.

aws accessanalyzer untag-resource \ --resource-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/ConsoleAnalyzer-account \ --tag-keys Environment Purpose

Este comando no genera ninguna salida.

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte UntagResourcela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-archive-rule.

AWS CLI

Para actualizar los criterios y valores de la regla de archivado especificada

En el siguiente update-archive-rule ejemplo, se actualizan los criterios y valores de la regla de archivo especificada en su AWS cuenta.

aws accessanalyzer update-archive-rule \ --analyzer-name UnusedAccess-ConsoleAnalyzer-organization \ --rule-name MyArchiveRule \ --filter '{"resource": {"contains": ["Cognito"]}, "resourceType": {"eq": ["AWS::IAM::Role"]}}'

Este comando no genera ninguna salida.

Para obtener más información, consulte las reglas de archivado en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte UpdateArchiveRulela Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarloupdate-findings.

AWS CLI

Para actualizar el estado de los hallazgos especificados

En el siguiente update-findings ejemplo, se actualiza el estado de los hallazgos especificados en su AWS cuenta.

aws accessanalyzer update-findings \ --analyzer-arn arn:aws:access-analyzer:us-west-2:111122223333:analyzer/UnusedAccess-ConsoleAnalyzer-organization \ --ids 4f319ac3-2e0c-4dc4-bf51-7013a086b6ae 780d586a-2cce-4f72-aff6-359d450e7500 \ --status ARCHIVED

Este comando no genera ninguna salida.

Para obtener más información, consulte Uso del analizador de acceso a AWS Identity and Access Management en la Guía del AWS IAM usuario.

  • Para API obtener más información, consulte UpdateFindingsla Referencia de AWS CLI comandos.

El siguiente ejemplo de código muestra cómo usarlovalidate-policy.

AWS CLI

Para solicitar la validación de una política y devuelve una lista de los resultados

En el siguiente validate-policy ejemplo, se solicita la validación de una política y se devuelve una lista de los resultados. La política del ejemplo es una política de confianza de roles para un rol de Amazon Cognito utilizado para la federación de identidades web. Los resultados generados a partir de la política de confianza se refieren a un valor de Sid elemento vacío y a un principio de política no coincidente debido a que se utilizó una acción incorrecta de asumir el rol. sts:AssumeRole La acción correcta de asumir un rol para usarla con Cognito es. sts:AssumeRoleWithWebIdentity

aws accessanalyzer validate-policy \ --policy-document file://myfile.json \ --policy-type RESOURCE_POLICY

Contenidos de myfile.json:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ], "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "us-west-2_EXAMPLE" } } } ] }

Salida:

{ "findings": [ { "findingDetails": "Add a value to the empty string in the Sid element.", "findingType": "SUGGESTION", "issueCode": "EMPTY_SID_VALUE", "learnMoreLink": "https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-policy-checks.html#access-analyzer-reference-policy-checks-suggestion-empty-sid-value", "locations": [ { "path": [ { "value": "Statement" }, { "index": 0 }, { "value": "Sid" } ], "span": { "end": { "column": 21, "line": 5, "offset": 81 }, "start": { "column": 19, "line": 5, "offset": 79 } } } ] }, { "findingDetails": "The sts:AssumeRole action is invalid with the following principal(s): cognito-identity.amazonaws.com. Use a SAML provider principal with the sts:AssumeRoleWithSAML action or use an OIDC provider principal with the sts:AssumeRoleWithWebIdentity action. Ensure the provider is Federated if you use either of the two options.", "findingType": "ERROR", "issueCode": "MISMATCHED_ACTION_FOR_PRINCIPAL", "learnMoreLink": "https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-policy-checks.html#access-analyzer-reference-policy-checks-error-mismatched-action-for-principal", "locations": [ { "path": [ { "value": "Statement" }, { "index": 0 }, { "value": "Action" }, { "index": 0 } ], "span": { "end": { "column": 32, "line": 11, "offset": 274 }, "start": { "column": 16, "line": 11, "offset": 258 } } }, { "path": [ { "value": "Statement" }, { "index": 0 }, { "value": "Principal" }, { "value": "Federated" } ], "span": { "end": { "column": 61, "line": 8, "offset": 202 }, "start": { "column": 29, "line": 8, "offset": 170 } } } ] }, { "findingDetails": "The following actions: sts:TagSession are not supported by the condition key cognito-identity.amazonaws.com:aud. The condition will not be evaluated for these actions. We recommend that you move these actions to a different statement without this condition key.", "findingType": "ERROR", "issueCode": "UNSUPPORTED_ACTION_FOR_CONDITION_KEY", "learnMoreLink": "https://docs.aws.amazon.com/IAM/latest/UserGuide/access-analyzer-reference-policy-checks.html#access-analyzer-reference-policy-checks-error-unsupported-action-for-condition-key", "locations": [ { "path": [ { "value": "Statement" }, { "index": 0 }, { "value": "Action" }, { "index": 1 } ], "span": { "end": { "column": 32, "line": 12, "offset": 308 }, "start": { "column": 16, "line": 12, "offset": 292 } } }, { "path": [ { "value": "Statement" }, { "index": 0 }, { "value": "Condition" }, { "value": "StringEquals" }, { "value": "cognito-identity.amazonaws.com:aud" } ], "span": { "end": { "column": 79, "line": 16, "offset": 464 }, "start": { "column": 58, "line": 16, "offset": 443 } } } ] } ] }

Para obtener más información, consulte Comprobaciones de validación de políticas en la Guía del AWS IAMusuario.

  • Para API obtener más información, consulte ValidatePolicyla Referencia de AWS CLI comandos.