Authentication
Airhouse uses SCRAM-SHA-256 password authentication, the same mechanism as modern PostgreSQL. Standard drivers support it out of the box. Credentials come from one of three places:
Passwords for database users and minted credentials are stored as SCRAM verifiers, never in plain text.
Roles
A statement your role doesn’t allow is rejected with SQLSTATE
42501 before it runs:
When a role can’t be determined
If Airhouse can’t determine the role for a session (for example, because the credential expired or was revoked before the session’s first query), it closes the connection rather than running with reduced privileges. Reconnect with a valid credential. Your driver’s normal reconnect logic handles this.TLS
When the server has a certificate and key configured (see[tls] in the configuration reference), clients can connect over TLS:
sslmode=require or stricter in every client that connects over a network you don’t control.
Static users for self-hosted setups
When you run Airhouse without the Admin API, you can define users in the configuration file:airhouse.toml
AIRHOUSE_USERS environment variable, as comma-separated name:password:role entries: