- User Role – Grants permissions to view, modify, or run FIS experiments through the console or CLI.
- Service Role – Assumed by FIS itself to perform actions on your AWS resources (for example, terminating an EC2 instance or failing over an Aurora database).
FIS experiments can induce downtime or resource failures. Apply the principle of least privilege when granting permissions to both roles.
IAM Role Comparison
| IAM Role | Purpose | Example Permissions |
|---|---|---|
| FIS User Role | Controls who can see, create, modify, or start experiments | fis:CreateExperimentTemplate, fis:StartExperiment |
| FIS Service Role | Defines what AWS resources FIS can interact with when running an experiment | ec2:TerminateInstances, rds:FailoverDBCluster |
1. Create the FIS User Role
This role is assumed by your users or CI/CD pipelines. It requires a trust policy for IAM principals and permissions to manage FIS experiments.trust-policy-user.json:
You can scope the policy further by granting only the specific
fis: actions your team requires.2. Create the FIS Service Role
The service role grants FIS permission to manipulate AWS resources on your behalf. Start by defining a trust relationship allowing the FIS service to assume it.trust-policy-service.json:
fis-service-policy.json: