AWSConfigRemediation-RevokeUnusedIAMUserCredentials - Amazon Systems Manager Automation runbook reference
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).



The AWSConfigRemediation-RevokeUnusedIAMUserCredentials runbook revokes unused Amazon Identity and Access Management (IAM) passwords and active access keys. This runbook also deactivates expired access keys, and deletes expired login profiles. Amazon Config must be enabled in the Amazon Web Services Region where you run this automation.

Run this Automation (console)

Document type





Linux, macOS, Windows


  • AutomationAssumeRole

    Type: String

    Allowed values: ^arn:(?:aws|aws-us-gov|aws-cn):iam::\d{12}:role\/[\w+=,.@/-]+$

    Description: (Required) The Amazon Resource Name (ARN) of the Amazon Identity and Access Management (IAM) role that allows Systems Manager Automation to perform the actions on your behalf.

  • IAMResourceId

    Type: String

    Description: (Required) The ID of the IAM resource you want to revoke unused credentials from.

  • MaxCredentialUsageAge

    Type: String

    Default: 90

    Description: (Required) The number of days within which the credential must have been used.

Required IAM permissions

The AutomationAssumeRole parameter requires the following actions to successfully use the runbook.

  • ssm:StartAutomationExecution

  • ssm:GetAutomationExecution

  • config:ListDiscoveredResources

  • iam:DeleteAccessKey

  • iam:DeleteLoginProfile

  • iam:GetAccessKeyLastUsed

  • iam:GetLoginProfile

  • iam:GetUser

  • iam:ListAccessKeys

  • iam:UpdateAccessKey

Document Steps

  • aws:executeScript - Revokes IAM credentials for the user specified in the IAMResourceId parameter. Expired access keys are deactivated, and expired login profiles are deleted.