Skip to content

ov auth

import { Aside } from ‘@astrojs/starlight/components’;

CommandDescription
ov auth loginAuthenticate and store API key locally
ov auth change-passwordChange your master password and re-wrap all DEKs
ov auth derive-machine-keyGenerate a machine key file for non-interactive use

Terminal window
ov auth login

Prompts for your email and master password. OpaqueVault derives your Key Encryption Key (KEK) from the password using Argon2id — the KEK never leaves your machine. An API key is created and stored in ~/.config/ov/config.toml.

On first login, a default app is created automatically.


Terminal window
ov auth change-password

Changes your master password. Prompts for your current password and new password, then atomically re-wraps every DEK under the new KEK. All secrets remain decryptable with the new password — nothing is re-encrypted from scratch.


Terminal window
ov auth derive-machine-key --out /etc/ov/machine.kek

Derives a 32-byte machine key from your master password and writes it to a file at 0600 permissions. Used for non-interactive environments (CI/CD, servers, systemd services) where prompting for a password is not possible.

Terminal window
# Flags
--out PATH Path to write the machine key file (required)

Once generated, pass the file to commands that support --machine-key:

Terminal window
ov run --machine-key /etc/ov/machine.kek --secrets DATABASE_URL -- ./migrate
ov agent start --machine-key /etc/ov/machine.kek --app my-saas

See Machine key setup for a full guide on non-interactive deployments.