AWS Config and AWS Organizations - AWS Organizations

AWS Config and AWS Organizations

Multi-account, multi-region data aggregation in AWS Config enables you to aggregate AWS Config data from multiple accounts and AWS Regions into a single account. Multi-account, multi-region data aggregation is useful for central IT administrators to monitor compliance for multiple AWS accounts in the enterprise. An aggregator is a resource type in AWS Config that collects AWS Config data from multiple source accounts and Regions. Create an aggregator in the Region where you want to see the aggregated AWS Config data. While creating an aggregator, you can choose to add either individual account IDs or your organization. For more information about AWS Config, see the AWS Config Developer Guide.

You can also use AWS Config APIs to manage AWS Config rules across all AWS accounts in your organization. For more information, see Enabling AWS Config Rules Across All Accounts in Your Organization in the AWS Config Developer Guide.

Use the following information to help you integrate AWS Config with AWS Organizations.

Service-linked roles created when you enable integration

The following service-linked role is created in your organization's accounts when you enable trusted access. This role allows AWS Config to perform supported operations within the accounts in your organization.

  • AWSServiceRoleForConfig

This role is created when you enable AWS Config in your organization by creating a multi-account aggregator. AWS Config asks you to select or create a role and for you to provide the name. There is no automatically generated name.

You can delete or modify this role only if you disable trusted access between AWS Config and Organizations, or if you remove the member account from the organization.

Enabling trusted access with AWS Config

For information about the permissions needed to enable trusted access, see Permissions required to enable trusted access.

You can enable trusted access using either the AWS Config console or the AWS Organizations console.

Important

We strongly recommend that whenever possible, you use the AWS Config console or tools to enable integration with Organizations. This lets AWS Config perform any configuration that it requires, such as creating resources needed by the service. Proceed with these steps only if you can’t enable integration using the tools provided by AWS Config. For more information, see this note.

If you enable trusted access by using the AWS Config console or tools then you don’t need to complete these steps.

To enable trusted access using the AWS Config console

To enable trusted access to AWS Organizations using AWS Config, create a multi-account aggregator and add the organization. For information on how to configure a multi-account aggregator, see Setting up an aggregator using the console in the AWS Config Developer Guide.

You can enable trusted access by using either the AWS Organizations console, by running a AWS CLI command, or by calling an API operation in one of the AWS SDKs.

AWS Management Console
To enable trusted service access using the Organizations console
  1. Sign in to the AWS Organizations console. You must sign in as an IAM user, assume an IAM role, or sign in as the root user (not recommended) in the organization’s management account.

  2. On the Services page, find the row for AWS Config, choose the service’s name, and then choose Enable trusted access.

  3. In the confirmation dialog box, enable Show the option to enable trusted access, enter enable in the box, and then choose Enable trusted access.

  4. If you are the administrator of only AWS Organizations, tell the administrator of AWS Config that they can now enable that service using its console to work with AWS Organizations.

AWS CLI, AWS API
To enable trusted service access using the OrganizationsCLI/SDK

You can use the following AWS CLI commands or API operations to enable trusted service access:

  • AWS CLI: enable-aws-service-access

    You can run the following command to enable AWS Config as a trusted service with Organizations.

    $ aws organizations enable-aws-service-access \ --service-principal config.amazonaws.com

    This command produces no output when successful.

  • AWS API: EnableAWSServiceAccess

Disabling trusted access with AWS Config

For information about the permissions needed to disable trusted access, see Permissions required to disable trusted access.

You can disable trusted access using only the Organizations tools.

You can disable trusted access by running a Organizations AWS CLI command, or by calling an Organizations API operation in one of the AWS SDKs.

AWS CLI, AWS API
To disable trusted service access using the Organizations CLI/SDK

You can use the following AWS CLI commands or API operations to disable trusted service access:

  • AWS CLI: disable-aws-service-access

    You can run the following command to disable AWS Config as a trusted service with Organizations.

    $ aws organizations disable-aws-service-access \ --service-principal config.amazonaws.com

    This command produces no output when successful.

  • AWS API: DisableAWSServiceAccess