| --- | |
| sidebar_label: sensitive | |
| description: The sensitive function marks a value as being sensitive. | |
| --- | |
| # `sensitive` Function | |
| `sensitive` takes any value and returns a copy of it marked so that OpenTofu | |
| will treat it as sensitive, with the same meaning and behavior as for | |
| [sensitive input variables](../../language/values/variables.mdx#suppressing-values-in-cli-output). | |
| Wherever possible we recommend marking your input variable and/or output value | |
| declarations as sensitive directly, instead of using this function, because in | |
| that case you can be sure that there is no way to refer to those values without | |
| OpenTofu automatically considering them as sensitive. | |
| The `sensitive` function might be useful in some less-common situations where a | |
| sensitive value arises from a definition _within_ your module, such as if you've | |
| loaded sensitive data from a file on disk as part of your configuration: | |
| ``` | |
| locals { | |
| sensitive_content = sensitive(file("${path.module}/sensitive.txt")) | |
| } | |
| ``` | |
| However, we generally don't recommend writing sensitive values directly within | |
| your module to any of the files you distribute statically as part of that module, | |
| because they may be exposed in other ways outside of OpenTofu's control. | |
| ## Examples | |
| ``` | |
| > sensitive(1) | |
| (sensitive value) | |
| > sensitive("hello") | |
| (sensitive value) | |
| > sensitive([]) | |
| (sensitive value) | |
| ``` |