Bug #71041
Refuser la génération d'un jeton de SLO si l'IdP ne le gère pas
0%
Description
Cf. #71035 : un SLO est démarré sur authentic, l'URL avec jeton est générée mais arrivé sur la vue de déconnexion de django-mellon une trace est générée avec l'erreur Lasso (logique) ProfileUnsupportedProfileError.
Fichiers
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Fichier 0001-misc-do-not-send-logout-requests-if-SingleLogout-pro.patch 0001-misc-do-not-send-logout-requests-if-SingleLogout-pro.patch ajouté
- Tracker changé de Bug à Development
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Paul Marillonnet il y a plus d'un an
· Dans les modifications apportées à create_server, peut-être logguer le cas où pour tous les idp connus on est entré dans le cas
for idp in get_idps():
if remote_provider_id and idp.get('ENTITY_ID') != remote_provider_id:
continue
qui indiquerait que clairement il y a des lacunes dans la définitions des IdP ?
· Tu ajoutes un argument remote_provider_id
aussi à la fonction create_logout
mais pas utilisé nulle part. Par exemple tu modifies mellon.views.LogoutView.sp_logout_request dans laquelle on connaît l’idp et on fait appel à ce create_logout
, mais tu laisses inchangée la ligneself.profile = logout = utils.create_logout(request)
Pourquoi ne pas utiliser ce kwargument remote_provider_id=issuer
ici aussi ?
· Enfin je lis
def is_slo_supported(request, issuer):
# […]
return (
server.getFirstHttpMethod(server.providers[issuer], lasso.MD_PROTOCOL_TYPE_SINGLE_SIGN_ON)
!= lasso.HTTP_METHOD_NONE
)
mais ici on cherche plutôt un appel à getFirstHttpMethod avec protocol_type=lasso.MD_PROTOCOL_TYPE_SINGLE_LOGOUT (pas SINGLE_SIGN_ON), non ?Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Fichier 0001-misc-do-not-send-logout-requests-if-SingleLogout-pro.patch 0001-misc-do-not-send-logout-requests-if-SingleLogout-pro.patch ajouté
- log ajouté
- j'ai retiré l'argument remote_provider_id à create_logout, ce n'est pas vraiment très utile pour l'instant
- is_slo_supported corrigé
Mis à jour par Paul Marillonnet il y a plus d'un an
- Statut changé de Solution proposée à Solution validée
Ok pour moi.
Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Statut changé de Solution validée à Résolu (à déployer)
commit 750f869e5f996fb67fa8571f0b5c9a74924260aa Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Mon Nov 7 15:53:34 2022 +0100 misc: do not send logout requests if SingleLogout profile is not supported (#71041)
Mis à jour par Transition automatique il y a plus d'un an
- Statut changé de Résolu (à déployer) à Solution déployée
misc: do not send logout requests if SingleLogout profile is not supported (#71041)