Skip to main content
Instead of sending signing credentials on every forward, you can attach authentication to an allowlisted destination once. From then on, any forward to that host is authenticated by the proxy automatically: HMAC-signed, presented with your mTLS client certificate, or both. Two authentication types are supported today, and they can be combined on one destination:
Your secrets are write-onlySecret material — signing keys and private keys — is accepted on registration and never returned by any endpoint. It is encrypted with a dedicated KMS key before it is stored; the plaintext exists only in memory while a request is being signed. Reads echo only non-secret material: the x_login identifier, or the certificate’s fingerprint and expiry.

Precedence: per-request headers always win

The per-request signing headers (yuno-proxy-auth + yuno-proxy-auth-secret-key) keep working exactly as before. On any forward:
  1. If the request carries yuno-proxy-auth* headers, those credentials are used.
  2. Otherwise, if the destination has a persisted profile, the proxy uses it.
  3. Otherwise, the request is forwarded without authentication, as a plain allowlist entry.
When a persisted DLOCAL_HMAC profile is applied, the proxy sets all four headers (X-Login, X-Trans-Key, X-Date, Authorization) from the profile — values you send for those headers on that request are replaced. An mTLS certificate is presented whenever the destination has an MTLS profile, regardless of how the request is signed. If the same hostname is registered both organization-wide and for a specific account, the account-scoped destination — and its authentication — wins for requests carrying that yuno-account-id.

Register a destination with authentication

Add an authentication array to the destination registration — at most one entry per type:
An mTLS entry carries the certificate and its private key in PEM format. The certificate may include intermediates; the private key is write-only:
The response — like every read of the destination — echoes only non-secret material:
An invalid configuration returns 422 INVALID_AUTHENTICATION: an unknown type, a duplicated type, a missing or empty required field, an unexpected field, a certificate or key that does not parse, a key that does not match the certificate, or an expired certificate.

Rotate credentials

Rotation is a full replace of the destination’s authentication — send the complete new configuration; there is no partial patch:
Returns 200 with the destination and its new authentication summary. The overwrite is idempotent and takes effect immediately — the next forward already uses the new credentials. Use certificate_expires_at on your reads to schedule certificate rotation before expiry.

Remove authentication

Returns 200. The destination keeps working as a plain allowlist entry; forwards to it are simply no longer authenticated by the proxy. Deleting the destination itself also removes its authentication. Every authentication change is recorded in the destination audit trail as AUTH_SET or AUTH_REMOVED.

Errors