Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cloud-docs: Update HCP TF security model #803

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

radeksimko
Copy link
Member

Added a few clarifications in the security/threat model concerning ephemeral values, as released recently in 1.10.

Copy link

vercel bot commented Dec 18, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
terraform-docs-common ✅ Ready (Inspect) Visit Preview 💬 Add feedback Dec 18, 2024 0:52am

Copy link
Contributor

@rkoron007 rkoron007 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Saw this as I was making another PR and had a few style suggestions! As always, please feel free to ignore anything that you don't like! ✨

@@ -116,6 +116,16 @@ Marking a variable as “sensitive” will prevent it from being displayed in th

The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. While Terraform tries to avoid writing sensitive information to logs, redactions are best-effort. This feature should not be treated as a security boundary, but instead as a mechanism to mitigate accidental exposure. Additionally, HCP Terraform is unable to protect against malicious users who attempt to use Terraform logs to exfiltrate sensitive data.

### Redaction of ephemeral values in Terraform logs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Redaction of ephemeral values in Terraform logs
### Redact ephemeral values from Terraform logs

@@ -116,6 +116,16 @@ Marking a variable as “sensitive” will prevent it from being displayed in th

The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. While Terraform tries to avoid writing sensitive information to logs, redactions are best-effort. This feature should not be treated as a security boundary, but instead as a mechanism to mitigate accidental exposure. Additionally, HCP Terraform is unable to protect against malicious users who attempt to use Terraform logs to exfiltrate sensitive data.

### Redaction of ephemeral values in Terraform logs

The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. Terraform tries to avoid writing ephemeral values to logs
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggest adding a link to ephemeral values so folks can learn more:

Suggested change
The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. Terraform tries to avoid writing ephemeral values to logs
The logs from a Terraform plan or apply operation are visible to any workspace's users with **Read** permissions. Terraform attempts to avoid writing [ephemeral values](/terraform/language/resources/ephemeral) to logs, but Terraform cannot guarantee that all providers will not log ephemeral values.

### Redaction of ephemeral values in Terraform logs

The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. Terraform tries to avoid writing ephemeral values to logs
and provider developers are discouraged from logging those as well but Terraform cannot provide guarantees that providers will not log ephemeral values.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you like the suggestion above, this is just a reminder to remove this line:

Suggested change
and provider developers are discouraged from logging those as well but Terraform cannot provide guarantees that providers will not log ephemeral values.


The logs from a Terraform plan or apply operation are visible to any user with at least “read” level access in the associated workspace. Terraform tries to avoid writing ephemeral values to logs
and provider developers are discouraged from logging those as well but Terraform cannot provide guarantees that providers will not log ephemeral values.
You can reduce the risk by only [using trusted modules and providers within Terraform configuration](#malicious-terraform-providers-or-modules).
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you specify what they are reducing the risk of?

and provider developers are discouraged from logging those as well but Terraform cannot provide guarantees that providers will not log ephemeral values.
You can reduce the risk by only [using trusted modules and providers within Terraform configuration](#malicious-terraform-providers-or-modules).

### Redaction of ephemeral values in memory
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
### Redaction of ephemeral values in memory
### Redact ephemeral values in memory


### Redaction of ephemeral values in memory

Ephemeral Values prevents values from being persisted to disk (as part of a plan file or state file) but no efforts are made to protect ephemeral values from memory analysis of the running application.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is there any recommendation we can give to folks here? Is this something they need to worry about? Or more like something we are giving them a heads-up about?

Suggested change
Ephemeral Values prevents values from being persisted to disk (as part of a plan file or state file) but no efforts are made to protect ephemeral values from memory analysis of the running application.
Terraform does not persist ephemeral values to plan or state files. However, Terraform does not protect ephemeral values from a memory analysis of your running application.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants