Projet

Général

Profil

Actions

Bug #3576

fermé

Impossible d'accéder à une ressource REST sécurisée depuis une webapp

Ajouté par Nicolas Dupont il y a plus de 11 ans. Mis à jour il y a plus de 11 ans.

Statut:
Closed
Priorité:
Urgent
Assigné à:
Catégorie:
API Rest
Début:
25/07/2012
Echéance:
% réalisé:

100%

Temps estimé:
Navigateur:
Tous
Votre version de Silverpeas:
5.10
Système d'exploitation:
Votre base de données:
Toutes
Livraison en TEST:
Livraison en PROD:

Description

Lorsque l'on veut accéder à une ressource REST en dehors de la webapp silverpeas, lorsque celle-ci est annotée par @Authorized ou @Authenticated, on reçoit systématiquement une réponse 401, y compris en passant l'entête Authorization dans la requête.
Le problème vient de la classe UserPriviledgeValidation. On commence par récupérer l'id de la session HTTP si elle existe, puis vérifier que cet id est valide. Or on crée systématiquement une session, ligne 129, via request.getSession();, à remplacer par request.getSession(false);

Mis à jour par Emmanuel Hugonnet il y a plus de 11 ans

  • Statut changé de New à Closed
  • Assigné à mis à Emmanuel Hugonnet
  • Version cible mis à Version 5.11
  • % réalisé changé de 0 à 100

La session n'est plus créée.

Mis à jour par Nicolas Dupont il y a plus de 11 ans

  • Statut changé de Closed à Re-opened

C'était en fait insuffisant, la session étant déjà créée par un filtre d'un composant, mappé sur /*
Voir https://github.com/Silverpeas/Silverpeas-Components/pull/127

Mis à jour par Nicolas Dupont il y a plus de 11 ans

Par ailleurs, même s'il y a une session ouverte qui n'est pas "valide", ne devrait-on pas tenir compte de l'entête Authorization quand il existe avant d'envoyer une réponse 401 ?

Mis à jour par Emmanuel Hugonnet il y a plus de 11 ans

  • Statut changé de Re-opened à Closed

Corrigé aussi

Actions

Formats disponibles : Atom PDF