testuser.tf 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. resource "aws_iam_user" "testuser" {
  2. name = "testuser"
  3. path = "/FIAMS/"
  4. tags = {
  5. project = "FIAMS"
  6. }
  7. force_destroy = true
  8. }
  9. data "template_file" "FIAM-TESTING-assume_any_fiam_role" {
  10. template = "${file("../policies/FIAM-TESTING-assume_any_fiam_role.json")}"
  11. vars = {
  12. account = "${data.aws_caller_identity.current.account_id}"
  13. }
  14. }
  15. resource "aws_iam_policy" "FIAM-TESTING-assume_any_fiam_role" {
  16. name = "FIAM-TESTING-assume_any_fiam_role"
  17. description = "Assume any FIAM role"
  18. policy = "${data.template_file.FIAM-TESTING-assume_any_fiam_role.rendered}"
  19. }
  20. resource "aws_iam_user_policy_attachment" "FIAM-TESTING-assume_any_fiam_role" {
  21. user = "${aws_iam_user.testuser.name}"
  22. policy_arn = "${aws_iam_policy.FIAM-TESTING-assume_any_fiam_role.arn}"
  23. }
  24. resource "aws_iam_user_login_profile" "testuser" {
  25. user = "${aws_iam_user.testuser.name}"
  26. pgp_key = "keybase:fdamstra"
  27. }
  28. output "testuser_password" {
  29. # to decrypt, run: terraform output testuser_password | base64 --decode | keybase --standalone pgp decrypt
  30. value = "${aws_iam_user_login_profile.testuser.encrypted_password}"
  31. }
  32. output "testuser_password_instructions" {
  33. value = "Execute: terraform output testuser_password | base64 --decode | keybase --standalone pgp decrypt"
  34. }