iam.go 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. package amazon
  2. const ECSTaskExecutionPolicy = "arn:aws:iam::aws:policy/service-role/AmazonECSTaskExecutionRolePolicy"
  3. var assumeRolePolicyDocument = PolicyDocument{
  4. Version: "2012-10-17", // https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_version.html
  5. Statement: []PolicyStatement{
  6. {
  7. Effect: "Allow",
  8. Principal: PolicyPrincipal{
  9. Service: "ecs-tasks.amazonaws.com",
  10. },
  11. Action: []string{"sts:AssumeRole"},
  12. },
  13. },
  14. }
  15. // could alternatively depend on https://github.com/kubernetes-sigs/cluster-api-provider-aws/blob/master/pkg/cloud/services/iam/types.go#L52
  16. type PolicyDocument struct {
  17. Version string `json:",omitempty"`
  18. Statement []PolicyStatement `json:",omitempty"`
  19. }
  20. type PolicyStatement struct {
  21. Effect string `json:",omitempty"`
  22. Action []string `json:",omitempty"`
  23. Principal PolicyPrincipal `json:",omitempty"`
  24. Resource []string `json:",omitempty"`
  25. }
  26. type PolicyPrincipal struct {
  27. Service string `json:",omitempty"`
  28. }