What's Changed#
feat(rotated-secrets): add rotated secrets, which hold the password of an account you already have and give it a new one on a schedule, after a set number of reads, or when you ask
feat(rotated-secrets): rotate Windows accounts, and Linux accounts that sign in over SSH, through the Ratel Node on their host (ratel-node 0.5.0 or newer)
feat(rotated-secrets): give the Windows services that run as an account its new password too
feat(rotated-secrets): rotate PostgreSQL roles, MySQL and MariaDB users, and Redis users through an admin login your Burrow signs in with
feat(rotated-secrets): change a Redis user's password on every replica and cluster node, and put it back on a server that lost it in a restart
feat(rotated-secrets): check an account's current password before the secret is saved, or have the node or the admin login set a new one
feat(rotated-secrets): check each new password on the account before your Burrow keeps it, and set the previous one back when the account didn't take it
feat(dynamic-secrets): add Windows account secrets, which give each machine its own local account on a Windows host with the access you choose (Remote Desktop, PowerShell remoting, administrator or other local groups), removed when its login ends (ratel-node 0.3.0 or newer)
feat(dynamic-secrets): add Linux account secrets, which give each machine its own local account on a Linux host that signs in over SSH with a password or a certificate from
ratel cert get, removed by the host when its login ends, even while the node is down (ratel-node 0.3.0 or newer)improvement(nodes): a node you remove takes its SSH trust and the accounts it made off its host, and shows as Removing until it confirms; Force remove deletes one that can't
improvement(secrets): keep a secret's name on one line in the secrets table, cut short with the full name on hover
improvement(secrets): show a red warning in place of a secret's rotation icon when its last rotation failed, with the reason on hover
improvement(ui): rows added to or removed from a table rise in and fade out, and the rows around them glide into place
improvement(ui): answer a passing test with a check mark
improvement(telemetry): usage reports count dynamic secrets by provider, certificate authorities, nodes and automatic rotation, and whether you've changed the rate limits
fix(dynamic-secrets): send PostgreSQL and MariaDB the hash of a login's password, so it stays out of the database's logs; a database that refuses hashes, such as one that checks passwords against a policy, still gets the password
fix(dynamic-secrets): keep retrying a login's removal for as long as the login could still sign in
fix(dynamic-secrets): send a saved admin password only to the server it was saved for, and ask for it again when the host, port, admin user or connection security changes
fix(relay): check and record a relayed request under the address the relay saw it come from, so the machine IP allowlist holds through the relay
fix(machines): record a machine whose address has a name in your local DNS by its address, so the machine IP allowlist lets it in
fix(backups): restore backups again, including ones taken before this release (a restore failed with a database error and left your Burrow as it was)
fix(master-key): rotate the master key, and turn TPM sealing on or off, on a Burrow with a signed webhook
fix(secrets): say why in the dialog when your Burrow can't delete a secret, environment or project right now
fix(dynamic-secrets): keep a certificate authority's name on one line in a new SSH user secret's review
fix(ratel-node): apply SSH trust and revocations on Ubuntu hosts while sshd waits for its first connection (ratel-node 0.3.0)
docs(rotated-secrets): add the Rotated secrets page