mirror of
				https://github.com/mealie-recipes/mealie.git
				synced 2025-10-30 17:53:31 -04:00 
			
		
		
		
	Make OIDC groups claim configurable and optional (#3552)
This commit is contained in:
		| @@ -20,7 +20,7 @@ Before you can start using OIDC Authentication, you must first configure a new c | ||||
| 1. Create a new client application | ||||
|     - The Provider type should be OIDC or OAuth2 | ||||
|     - The Grant type should be `Authorization Code` | ||||
|     - The Application type should be `Web` | ||||
|     - The Application type should be `Web` or `SPA` | ||||
|     - The Client type should be `public` | ||||
|  | ||||
| 2. Configure redirect URI | ||||
| @@ -42,7 +42,9 @@ Before you can start using OIDC Authentication, you must first configure a new c | ||||
|  | ||||
| 4. Configure allowed scopes | ||||
|  | ||||
|     The scopes required are `openid profile email groups` | ||||
|     The scopes required are `openid profile email` | ||||
|  | ||||
|     If you plan to use the [groups](#groups) to configure access within Mealie, you will need to also add the scope defined by the `OIDC_GROUPS_CLAIM` environment variable. The default claim is `groups` | ||||
|  | ||||
| ## Mealie Setup | ||||
|  | ||||
| @@ -50,7 +52,7 @@ Take the client id and your discovery URL and update your environment variables | ||||
|  | ||||
| ### Groups | ||||
|  | ||||
| There are two (optional) [environment variables](../installation/backend-config.md#openid-connect-oidc) that can control which of the users in your IdP can log in to Mealie and what permissions they will have. The groups should be **defined in your IdP** and be returned in the `groups` claim. | ||||
| There are two (optional) [environment variables](../installation/backend-config.md#openid-connect-oidc) that can control which of the users in your IdP can log in to Mealie and what permissions they will have. Keep in mind that these groups **do not necessarily correspond to groups in Mealie**. The groups claim is configurable via the `OIDC_GROUPS_CLAIM` environment variable. The groups should be **defined in your IdP** and be returned in the configured claim value. | ||||
|  | ||||
| `OIDC_USER_GROUP`: Users must be a part of this group (within your IdP) to be able to log in. | ||||
|  | ||||
|   | ||||
| @@ -98,7 +98,8 @@ For usage, see [Usage - OpenID Connect](../authentication/oidc.md) | ||||
| | OIDC_PROVIDER_NAME     |  OAuth  | The provider name is shown in SSO login button. "Login with <OIDC_PROVIDER_NAME\>"                                                                                                                        | | ||||
| | OIDC_REMEMBER_ME       |  False  | Because redirects bypass the login screen, you cant extend your session by clicking the "Remember Me" checkbox. By setting this value to true, a session will be extended as if "Remember Me" was checked | | ||||
| | OIDC_SIGNING_ALGORITHM |  RS256  | The algorithm used to sign the id token (examples: RS256, HS256)                                                                                                                                          | | ||||
| | OIDC_USER_CLAIM        |  email  | Optional: 'email', 'preferred_username'                                                                                                                                                                   | | ||||
| | OIDC_USER_CLAIM        |  email  | This is the claim which Mealie will use to look up an existing user by (e.g. "email", "preferred_username") | | ||||
| | OIDC_GROUPS_CLAIM      | groups  | Optional if not using `OIDC_USER_GROUP` or `OIDC_ADMIN_GROUP`. This is the claim Mealie will request from your IdP and will use to compare to `OIDC_USER_GROUP` or `OIDC_ADMIN_GROUP` to allow the user to log in to Mealie or is set as an admin. **Your IdP must be configured to grant this claim**| | ||||
| | OIDC_TLS_CACERTFILE    | None    | File path to Certificate Authority used to verify server certificate (e.g. `/path/to/ca.crt`) | | ||||
|  | ||||
| ### Themeing | ||||
|   | ||||
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							
		Reference in New Issue
	
	Block a user