AWS Resources
This guide will walk you through integrating Common Fate with Amazon Web Services (AWS) for access to specific resources like S3 Buckets. By the end of this guide, you’ll have a functioning integration with Common Fate, allowing it to read your AWS resources and provision access to entitlements.
AWS Setup
Common Fate uses the managed policy SecurityAudit to read metadata about reasources in your AWS accounts. You can deploy a terraform module that will roll out a CloudFormation StackSet to a set of accounts in your organization. Alternatively you can deploy a role manually in each account that you wish to read resources from.
You’ll need access to a role with the ability to create IAM roles and policies in your AWS account.
We have developed a reference integration Terraform module which deploys the following resources:
- A StackSet which creates an IAM Role with SecurityAudit policy in accounts within the selected Organizational Units
To deploy the reference integration, create a new Terraform root module with the following module:
-
Open the AWS Console in an account you wish to scan for resources.
-
Navigate to IAM and click on “Roles” in the left navigation pane.
-
Create a role named “common-fate-audit” this is the default, you can use a different name if you like and specify it in the later steps.
-
Attach the SecurityAudit managed policy.
-
Configure the trust policy of the read role to allow the Common Fate Deployment account to assume it.
-
Optionally add an external ID condition.
Configuring Common Fate
In this section, you will register the AWS integration with your Common Fate deployment. At the end of this section, you should have Common Fate reading AWS resources and see them inside the web dashboard. You’ll need to have set up the Common Fate Application Configuration repository using our Terraform provider.
Inside your Application Configuration repository, add the following module:
Apply the changes. If the apply succeeds AWS resources should populate within 10 minutes.
If after 10 minutes you do not see resources appear, check the logs of the common-fate-prod-worker
service in ECS. You can search for aws_global_resource_sync
to filter for structured logs containing data about the AWS Resources integration.
Provisioning access to AWS Resources
You can now create an access workflow and availabilities:
Built-in Roles for AWS Resource Access
Common Fate provides 4 built-in role for use when accessing AWS Resources.
- Access::Role::“MetadataViewer”
- Access::Role::“Reader”
- Access::Role::“Editor”
- Access::Role::“Owner”
When a user requests access to resources within the same AWS Account, a single PermissionSet is created or updated with the required IAM policies to grant access to all their requested resources. Users can access this role via the Common Fate web console by visiting their request. The web console also has instructions to access the role via Granted CLI.