OpenID invalid_request #9538
-
@jrasm91 tagged per your request in [BUG] Failed to finish oauth #6400 discussion. Currently writing a guide to setup up OpenID on Truecharts and would appreciate some help. The guide on Authelia's website seems to be outdated and doesn't include any information about the Signing Algorithm that seems to be required in Immich since 1.95.1. I tried leaving the field empty or set OPError: invalid_client (Client authentication failed (e.g., unknown client, no client authentication included, or unsupported authentication method).) I tried to setup RS256 but I'm always getting this error no matter what I'm trying; [Nest] 8 - 05/16/2024, 12:34:34 PM ERROR [ImmichServer] [OPError: invalid_request (The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed. Clients must include a 'code_challenge' when performing the authorize code flow, but it is missing.)
at Client.callback (/usr/src/app/node_modules/openid-client/lib/client.js:443:13)
at AuthService.getOAuthProfile (/usr/src/app/dist/services/auth.service.js:221:41)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async AuthService.callback (/usr/src/app/dist/services/auth.service.js:154:25)
at async OAuthController.finishOAuth (/usr/src/app/dist/controllers/oauth.controller.js:39:22)] OPError: invalid_request (The request is missing a required parameter, includes an invalid parameter value, includes a parameter more than once, or is otherwise malformed. Clients must include a 'code_challenge' when performing the authorize code flow, but it is missing.) |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments 8 replies
-
Can you share the configuration you are using in authelia for the immich provider? |
Beta Was this translation helpful? Give feedback.
-
Sure! As I said I'm writing a guide for Truecharts which runs in TrueNAS Scale. All of the configuration must be passed through a gui, but there's quite a lot of options in there. I tried a lot of configurations so I'll share here the one that was advised in Authelia's documentation. First I generated a secret in Authelia pod shell with this command and used the Digest string.
Then in Authelia app configuration I've set those values. ID/Name* Description* Secret*
Authorization Policy Consent Mode Userinfo Signing Algorithm Audience Scopes redirect_uris grant_types response_types response_modes token_endpoint_auth_method ** Require PKCE ** (checkbox) PKCE Challange Method Hope this helps and thank you for helping me out! |
Beta Was this translation helpful? Give feedback.
-
Hey ! If you want, this is my actual Authelia configuration and I declare the immich config, immich-config.json, in the helm chart (app-template). |
Beta Was this translation helpful? Give feedback.
-
I think I might have made a mistake setting up the actual settings in Immich itself. I was wondering if I had to replace |
Beta Was this translation helpful? Give feedback.
Oh, I think you need to set the clear secret not the hashed one with argon generated as:
authelia crypto hash generate pbkdf2 --variant sha512 --random --random.length 72 --random.charset rfc3986
The clear one for immich, the one starting with
$argon2id
for authelia.