Add ShareConfig Functionality for Secure Configuration Sharing to Bitwarden Self-Hosted (Bash)#228
Add ShareConfig Functionality for Secure Configuration Sharing to Bitwarden Self-Hosted (Bash)#228fer wants to merge 6 commits into
Conversation
|
No New Or Fixed Issues Found |
|
How do we make sure that secrets added to new and existing environment files are redacted? |
Thank you for bring this up. To ensure the dynamic redaction of secrets from But still these patterns would be to catch common ways, they wouldn't cover still new situations. Open to new suggestions to investigate. |
|
As discussed, we should put a disclaimer on the script stating the files and values we have masked and that the user to verify there are no additional config files that container secrets. This ensures they are agreeing that there might be secrets that are still shared. |
keithhubner
left a comment
There was a problem hiding this comment.
AI code review:
Key Things to Check:
Sed Pattern Completeness & Correctness – The patterns are fragile:
Password=.*;\ only matches if a semicolon follows; standalone passwords in .env files without delimiters will be missed
Pattern is case-sensitive (Password= vs password=) – different file formats use different casing
No coverage for Base64-encoded secrets, encrypted values, or API keys beyond the explicit list
The warning message itself signals incomplete redaction—this is a security liability
Error Handling & Cleanup – No defensive measures:
Missing set -e or error checks on sed, tar, cp operations
No trap to clean up $TEMP_DIR if the script fails mid-execution
Temp directory leaks if the function exits early
File Permissions – Output tar.gz created in current directory with default umask; should explicit chmod 600 to prevent accidental exposure during troubleshooting workflows
Format-Specific Parsing – Single sed approach won't reliably handle XML values (...) or YAML quoted strings; consider format-aware redaction (e.g., separate handlers per file type)

Description
Introduces the
shareconfigfunctionality to the Bitwarden self-hosted setup script, enabling administrators to securely share their Bitwarden configuration files. Theshareconfigcommand sanitizes sensitive information by redacting values associated with passwords and secrets before compressing the configuration files into atar.gzarchive. This ensures that critical information remains secure when configuration files need to be shared for troubleshooting or auditing purposes.Features
.conf,.env,.xml, and.ymlfiles within the Bitwarden configuration directory.tar.gzarchive of the sanitized configuration files, ready for secure sharing with support teams or for audit purposes.Usage examples
To use this functionality, run the following command from the Bitwarden self-hosted script directory:
This will generate a file named
bitwarden-configs-redacted-<timestamp>.tar.gzin the current directory.Testing
Please review this PR for inclusion in the next release of Bitwarden self-hosted. Your feedback and suggestions are welcome!