Bug #75786
auth_oidc: InvalidJWSSignature qui remonte ou get_key qui échoue
Début:
24 mars 2023
Echéance:
% réalisé:
0%
Temps estimé:
Patch proposed:
Non
Planning:
Non
Description
https://sentry.entrouvert.org/entrouvert/publik/issues/109238/?environment=test&referrer=alert_email
https://sentry.entrouvert.org/entrouvert/publik/issues/109237/?environment=test
Sur une configuration OIDC au finistère où le document JWK n'a pas été configuré, on a de même un souci quand le kid dans le JWT n'est pas trouvé, dans les deux cas il faut éviter.
File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/views.py", line 134, in get response = self.handle_authorization_response(request) File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/views.py", line 178, in handle_authorization_response return self.handle_code(request, provider, nonce, code) File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/views.py", line 291, in handle_code user = authenticate( File "/usr/lib/python3/dist-packages/authentic2/utils/misc.py", line 1308, in authenticate return dj_authenticate(request=request, **kwargs) File "/usr/lib/python3/dist-packages/django/views/decorators/debug.py", line 42, in sensitive_variables_wrapper return func(*func_args, **func_kwargs) File "/usr/lib/python3/dist-packages/django/contrib/auth/__init__.py", line 76, in authenticate user = backend.authenticate(request, **credentials) File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/backends.py", line 45, in authenticate return self._authenticate( File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/backends.py", line 56, in _authenticate id_token.deserialize(provider) File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/utils.py", line 143, in deserialize decoded = parse_id_token(self._encoded, provider) File "/usr/lib/python3/dist-packages/authentic2_auth_oidc/utils.py", line 67, in parse_id_token key = provider.jwkset.get_key(kid=kid) Exception Type: AttributeError at /accounts/oidc/callback/ Exception Value: 'NoneType' object has no attribute 'get_key'
Révisions associées
Historique
Mis à jour par Robot Gitea il y a 5 mois
- Statut changé de Nouveau à Solution proposée
Benjamin Dauvergne (bdauvergne) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/authentic/pulls/180
- Titre : auth_oidc: check provider.jwkset before using it (#75786)
- Modifications : https://git.entrouvert.org/entrouvert/authentic/pulls/180/files
Mis à jour par Robot Gitea il y a 5 mois
- Statut changé de Solution proposée à Solution validée
Nicolas Roche (nroche) a approuvé une pull request sur Gitea concernant cette demande :
Mis à jour par Robot Gitea il y a 5 mois
- Statut changé de Solution validée à Résolu (à déployer)
Benjamin Dauvergne (bdauvergne) a mergé une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/authentic/pulls/180
- Titre : auth_oidc: check provider.jwkset before using it (#75786)
- Modifications : https://git.entrouvert.org/entrouvert/authentic/pulls/180/files
Mis à jour par Transition automatique il y a 5 mois
- Statut changé de Résolu (à déployer) à Solution déployée
auth_oidc: check provider.jwkset before using it (#75786)
When jwkset is necessary and missing, a warning message is issued.