OAuth setup with Zitadel #3557
Aurel004
started this conversation in
OAuth Provider Example
Replies: 1 comment 1 reply
-
Is this setup still possible following v2.0? I'm having trouble setting up Mealie w/ Zitadel using User Agent/SPA (because there's no secret) and using Web. Mealie itself recognizes my OIDC configuration, but Zitadel does not even see the client ID. |
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Configuration Example
Let's configure mealie to work with Zitadel
Docs used:
Go to your zitadel console: https://zitadel.mydomain.com/ui/console
Go to Projects and create a new one if needed, mine will be
server
Click on New

Name it

Mealie
and select User AgentSelect PKCE

Redirect URIs set the url of mealie and path login:

https://mealie.mydomain.com/login
Post Logout URIs set the url of mealie and path login?direct=1:
https://mealie.mydomain.com/login?direct=1
Click Create and copy the ClientId provided in Notepad
To configure the OIDC_ADMIN_GROUP: Users that are in this group (within your IdP) will be seen as admin in Mealie. you will need to configure Roles
Assert Roles on Authentication
Admin
(this will be the name used for the group name in mealie), a display name and a group (this one is used for hierarchical groups in case you create other groups)Token Settings
and tickUser roles inside ID Token
to add theAdmin
role to the response for MealieUser Info inside ID Token
to give your preferred_username and email to MealieGo to your mealie docker-compose.yml file and add the following to environment:
#SSO
OIDC_AUTH_ENABLED: true #Enable OIDC
OIDC_SIGNUP_ENABLED: false #Allow unknown users for mealie
OIDC_CONFIGURATION_URL: https://zitadel.mydomain.com/.well-known/openid-configuration
OIDC_CLIENT_ID: XXX@server #ClientId of Step 7
OIDC_AUTO_REDIRECT: false #Enable or disable auto-redirect to OIDC
OIDC_PROVIDER_NAME: Zitadel #Choose a name, it can be OAuth (default)
OIDC_REMEMBER_ME: true
OIDC_ADMIN_GROUP: Admin #The Key name in Step 8
OIDC_GROUPS_CLAIM: urn:zitadel:iam:org:project:{projectId}:roles #Replace {projectId} with the Resource Id copied in step 8, you can also put urn:zitadel:iam:org:project:roles instead but might be deprecated in the future
OIDC_USER_CLAIM: email #Default email, so your email in Zitadel must match existing email account in mealie (if OIDC_SIGNUP_ENABLED set to false), it can be changed to preferred_username
Recreate your container and voilà, you're done
Beta Was this translation helpful? Give feedback.
All reactions