Skip to content

Commit 2a8b7fa

Browse files
authored
docs: Add Yuvomi OIDC client example (#299)
1 parent 580d176 commit 2a8b7fa

1 file changed

Lines changed: 49 additions & 0 deletions

File tree

docs/client-examples/yuvomi.md

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
---
2+
title: Yuvomi
3+
description: Configure Yuvomi with Pocket ID authentication
4+
---
5+
6+
The following variables are used in this example. Replace them with your actual URLs:
7+
8+
- `YUVOMI_URL` (The URL of your Yuvomi instance.)
9+
- `POCKET_ID_URL` (The URL of your Pocket ID instance.)
10+
11+
## Create OIDC Client in Pocket ID
12+
13+
1. Create a new OIDC Client in Pocket ID (e.g., `Yuvomi`).
14+
2. Set the **Callback URL** to `${YUVOMI_URL}/api/v1/auth/oidc/callback`.
15+
3. Enable **PKCE** for the OIDC Client. Yuvomi uses the Authorization Code flow with PKCE (S256) and a nonce.
16+
4. Copy the **Client ID** and **Client Secret** for the next steps.
17+
18+
## Configure email verification in Pocket ID
19+
20+
1. Open **Administration → Application Configuration** in Pocket ID.
21+
2. Enable **Emails Verified**.
22+
3. Open each user's account under **Users** and verify their email address. Pocket ID then sends `email_verified: true` for that user.
23+
24+
## Configure Yuvomi
25+
26+
Set the following environment variables in Yuvomi:
27+
28+
```env
29+
OIDC_ISSUER=${POCKET_ID_URL}
30+
OIDC_CLIENT_ID=$clientid
31+
OIDC_CLIENT_SECRET=$clientsecret
32+
OIDC_REDIRECT_URI=${YUVOMI_URL}/api/v1/auth/oidc/callback
33+
```
34+
35+
Replace `$clientid` and `$clientsecret` with the values from the OIDC Client in Pocket ID. Then restart Yuvomi and test the OIDC login.
36+
37+
## Secure default for email verification
38+
39+
Keep Yuvomi's fallback for a missing verification claim disabled:
40+
41+
```env
42+
OIDC_TRUST_EMAIL_WITHOUT_VERIFIED_CLAIM=false
43+
```
44+
45+
This is the secure default. Yuvomi links an existing local account by email only when Pocket ID sends `email_verified: true` and exactly one local account has that email address. Do not set this option to `true` when Pocket ID can provide the claim.
46+
47+
The redirect URL must match the callback URL registered in Pocket ID exactly.
48+
49+
For the remaining OIDC options, account linking behavior, signup restrictions, and passwordless SSO, see Yuvomi's [SSO / OpenID Connect documentation](https://github.com/ulsklyc/yuvomi/blob/main/docs/installation.md#sso--openid-connect-optional).

0 commit comments

Comments
 (0)