ecr_pop_user.tf 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. # Defines an IAM user that can only download ECR images, intended for
  2. # use in POP nodes where we need containers, but won't necessarily have
  3. # EC2 instance role credentials. Maybe one day this goes to vault, I
  4. # hope. It would be nice.
  5. # data "aws_iam_policy_document" "ecr_policy_pop" {
  6. # statement {
  7. # sid = "AllowECRReadOnly"
  8. # effect = "Allow"
  9. # actions = [
  10. # "ecr:GetAuthorizationToken",
  11. # "ecr:BatchCheckLayerAvailability",
  12. # "ecr:GetDownloadUrlForLayer",
  13. # "ecr:GetRepositoryPolicy",
  14. # "ecr:DescribeRepositories",
  15. # "ecr:ListImages",
  16. # "ecr:DescribeImages",
  17. # "ecr:BatchGetImage"
  18. # ]
  19. # resources = [
  20. # "*"
  21. # ]
  22. # }
  23. # }
  24. # resource "aws_iam_policy" "ecr_policy_pop" {
  25. # name = "ecr_policy_pop"
  26. # path = "/"
  27. # policy = "${data.aws_iam_policy_document.ecr_policy_pop.json}"
  28. # }
  29. # resource "aws_iam_user" "pop_service_account" {
  30. # name = "svc-mdrpop"
  31. # path = "/service/"
  32. # }
  33. # resource "aws_iam_user_policy_attachment" "pop_service_account_1" {
  34. # user = "${aws_iam_user.pop_service_account.name}"
  35. # policy_arn = "${aws_iam_policy.ecr_policy_pop.arn}"
  36. # }
  37. # resource "aws_iam_access_key" "pop_service_account" {
  38. # user = "${aws_iam_user.pop_service_account.name}"
  39. # pgp_key = "${file("../00-organizations-and-iam/duane_waddle.pgp")}"
  40. # }
  41. # output "pop_service_account_key_id" {
  42. # value = "${aws_iam_access_key.pop_service_account.id}"
  43. # }
  44. # output "pop_service_account_secret" {
  45. # value = "${aws_iam_access_key.pop_service_account.encrypted_secret}"
  46. # }