Overview
Connect to AWS by using an IAM user’s access key to assume the IAM role you specify.Configuring AWS Access
Before creating the connection, make sure:- You have an IAM user or IAM principal that can call
sts:AssumeRole. - You have an IAM role with the permissions you want to use.
- That role’s trust policy allows that principal to assume it.
- If you use third-party-style cross-account protection, you have the external ID value ready for the connection.
Example: CloudWatch Read-Only Role
For CloudWatch and CloudWatch Logs, the connection needs both a source IAM user and a target IAM role:- Create an IAM user for the source access key, for example
mistle-cloudwatch-source. - Create an access key for that user. Use its access key ID and secret access key in the Mistle connection form.
- Create an IAM role for the sandbox permissions, for example
mistle-cloudwatch-role. - Give the IAM user permission to call
sts:AssumeRoleon that role. - Give the IAM role read-only CloudWatch permissions.
- Configure the role trust policy so the role trusts the IAM user.
ReadOnlyAccess is usually enough. For a narrower production setup, start with AWS-managed CloudWatchReadOnlyAccess and CloudWatchLogsReadOnlyAccess, then narrow further if your account policy requires it.
The role trust policy must allow the source user to assume the role:
Connect In Mistle
Open Integrations in the dashboard, choose AWS, then select Access key + AssumeRole. Enter:
If the connection fails with
AccessDenied during STS AssumeRole, check that the source access key belongs to the intended principal, the source principal can call sts:AssumeRole on the role, the role trust policy allows that source principal, and the external ID matches if one is configured.
If CloudWatch or CloudWatch Logs returns AccessDenied, Mistle assumed the role, but the role lacks permission for the requested CloudWatch or Logs action.