diff --git a/CHANGELOG.md b/CHANGELOG.md
index a5ff92a..a6acc9c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -70,3 +70,8 @@
* 2.8.3 -- 2022-09-14
- fix access key variables and usage
+
+## Version 3.x
+
+* 3.0.0 -- 2023-11-22 tf-upgrade
+ - if pgp_key_file is not provided (empty), it will use the secret vs encrypted secret, so that the secret can be used as input into other resources
diff --git a/README.md b/README.md
index 61b1ce3..4cd6901 100644
--- a/README.md
+++ b/README.md
@@ -153,7 +153,7 @@ No requirements.
| Name | Description |
|------|-------------|
| [aws\_access\_key\_id](#output\_aws\_access\_key\_id) | AWS Access Key (current) |
-| [aws\_secret\_access\_key](#output\_aws\_secret\_access\_key) | AWS Secret Access Key [encrypted] (current) |
+| [aws\_secret\_access\_key](#output\_aws\_secret\_access\_key) | AWS Secret Access Key, either encrypted (if using PGP key) or clear |
| [user\_arn](#output\_user\_arn) | User ARN |
| [user\_name](#output\_user\_name) | User name |
| [user\_password](#output\_user\_password) | User Password |
diff --git a/access_keys.tf b/access_keys.tf
index 3107191..dfbcf69 100644
--- a/access_keys.tf
+++ b/access_keys.tf
@@ -31,10 +31,10 @@ locals {
username = aws_iam_user.user.name
profile = local.profile
account_id = local.account_id
- create_date = var.create_access_keys ? lookup(aws_iam_access_key.iam_access_key_v1[0], "create_date", "") : ""
- access_key_id = var.create_access_keys ? lookup(aws_iam_access_key.iam_access_key_v1[0], "id", "") : ""
- encrypted_secret = var.create_access_keys ? lookup(aws_iam_access_key.iam_access_key_v1[0], "encrypted_secret", "") : ""
- secret = var.create_access_keys ? lookup(aws_iam_access_key.iam_access_key_v1[0], "secret", "") : ""
+ create_date = var.create_access_keys && try(aws_iam_access_key.iam_access_key_v1[0].create_date != null) ? aws_iam_access_key.iam_access_key_v1[0].create_date : ""
+ access_key_id = var.create_access_keys && try(aws_iam_access_key.iam_access_key_v1[0].id != null) ? aws_iam_access_key.iam_access_key_v1[0].id : ""
+ encrypted_secret = var.create_access_keys && try(aws_iam_access_key.iam_access_key_v1[0].encrypted_secret != null) ? aws_iam_access_key.iam_access_key_v1[0].encrypted_secret : ""
+ secret = var.create_access_keys && try(nonsensitive(aws_iam_access_key.iam_access_key_v1[0].secret) != null) ? aws_iam_access_key.iam_access_key_v1[0].secret : ""
})
}
@@ -85,7 +85,7 @@ resource "local_sensitive_file" "access_key_file" {
}
resource "null_resource" "access_key_file_decrypt_key" {
- count = var.create_access_keys ? 1 : 0
+ count = var.create_access_keys && var.pgp_key_file != "" ? 1 : 0
triggers = {
access_keys_directory = var.create_access_keys ? format("%v/%v", path.root, join("", null_resource.rotate_keys_tfvars.*.triggers.access_keys_directory)) : "."
access_key_file = var.create_access_keys ? join("", local_sensitive_file.access_key_file.*.filename) : "empty.txt"
diff --git a/outputs.access_keys.tf b/outputs.access_keys.tf
index 602648b..bc7fa51 100644
--- a/outputs.access_keys.tf
+++ b/outputs.access_keys.tf
@@ -14,7 +14,8 @@ output "aws_access_key_id" {
}
output "aws_secret_access_key" {
- description = "AWS Secret Access Key [encrypted] (current)"
- value = var.create_access_keys ? lookup(aws_iam_access_key.iam_access_key_v1[0], "encrypted_secret", "") : ""
+ description = "AWS Secret Access Key, either encrypted (if using PGP key) or clear"
+ # value = var.create_access_keys ? try(lookup(aws_iam_access_key.iam_access_key_v1[0], "encrypted_secret"),nonsensitive(lookup(aws_iam_access_key.iam_access_key_v1[0], "secret"))) : ""
+ # value = var.create_access_keys ? try(aws_iam_access_key.iam_access_key_v1[0].encrypted_secret,nonsensitive(aws_iam_access_key.iam_access_key_v1[0].secret)) : ""
+ value = var.create_access_keys && try(aws_iam_access_key.iam_access_key_v1[0].encrypted_secret != null) ? aws_iam_access_key.iam_access_key_v1[0].encrypted_secret : nonsensitive(aws_iam_access_key.iam_access_key_v1[0].secret)
}
-
diff --git a/templates/access_key.tpl b/templates/access_key.tpl
index c5484a0..b4432d6 100644
--- a/templates/access_key.tpl
+++ b/templates/access_key.tpl
@@ -4,3 +4,4 @@ create_date: ${create_date}
username: ${username}
access_key_id: ${access_key_id}
access_secret_key_encrypted: ${encrypted_secret}
+access_secret_key: ${secret}
diff --git a/version.tf b/version.tf
index c6b1ea7..964202d 100644
--- a/version.tf
+++ b/version.tf
@@ -1,4 +1,4 @@
locals {
_module_name = "aws-iam-user"
- _module_version = "2.8.3"
+ _module_version = "3.0.0"
}