Projet

Général

Profil

Bug #5231

Add a field to A2Client to bypass authorization

Ajouté par Benjamin Dauvergne il y a plus de 9 ans. Mis à jour il y a plus de 9 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
authentic2-idp-oauth2
Version cible:
-
Début:
30 juillet 2014
Echéance:
% réalisé:

100%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

The field should be a charfield and contain a space separated list of scope which are automatically granted, it's the equivalent of the settings AUTOMATIC_GRANT.


Fichiers

Révisions associées

Révision 047746e9 (diff)
Ajouté par Serghei Mihai il y a plus de 9 ans

automatically granted scopes defined also in client attribute besides of settings

Closes #5231

Révision 65f1db6c (diff)
Ajouté par Serghei Mihai il y a plus de 9 ans

handle the correctly authorized_scopes attribute format

Closes #5231

Historique

#1

Mis à jour par Serghei Mihai il y a plus de 9 ans

  • Assigné à mis à Serghei Mihai
#2

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Logic code is in authentic2_idp_oauth2.views.Authorize.

#3

Mis à jour par Serghei Mihai il y a plus de 9 ans

Field added and checked in Authorize view

#4

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Ok mais il ne fallait pas virer AUTOMATIC_GRANT car il y a toujours des projets qui s'en servent.

#5

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Il faudrait ajouter un if hasattr(client, 'a2client'): car on est pas sûr d'avoir affaire à un A2Client.

#7

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Ok.

#8

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

  • Statut changé de Nouveau à Solution déployée

Poussé, taggé, publié.

commit 6893b249f9d06d152ca6f9ac3b7b54c0fe3bc884
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Aug 12 14:48:35 2014 +0200

    bump release to 1.0.14

commit f615f898c4e3c7c96956525f4c17c8ec8510ff3f
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Tue Aug 12 14:50:25 2014 +0200

    remove template api.html

commit 047746e9d1db2f98d1570ad29d3e089f62b9aa41
Author: Serghei MIHAI <smihai@entrouvert.com>
Date:   Fri Aug 1 11:13:17 2014 +0200

    automatically granted scopes defined also in client attribute besides of settings

    Closes #5231

commit 142caf82d5f65d606d6f4cdd71ccd3774e8c8e6c
Author: Benjamin Dauvergne <bdauvergne@entrouvert.com>
Date:   Wed Jul 16 14:16:19 2014 +0200

    models: AttributeRelease.attribute_name must not be contrained at the model level

#9

Mis à jour par Serghei Mihai il y a plus de 9 ans

Fix d'un bug zappé: vérifier si authorized_scopes est None ou vide

#10

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Puisqu'on est sur cette route:
  • le champ authorized_scopes ne devrait jamais être null, donc pas de null=True
  • il faudrait valider le contenu d'authorized scope avec une regexp assez simple comme ^[a-z0-9-_*\s]*$, il y un RegexpField je pense sinon utiliser le champs validators sur le modèle
  • ne conserver que la valeur strippé vi la méthode clean du modèle
  • son contenu devrait être mieux parsé, il faut splitter, striper, puis enlever les valeurs vides, avec un code dans le genre de:
     scopes = filter(None, map(unicode.strip, scopes.strip().split(' ')))
#11

Mis à jour par Serghei Mihai il y a plus de 9 ans

Benjamin Dauvergne a écrit :

Puisqu'on est sur cette route:
  • le champ authorized_scopes ne devrait jamais être null, donc pas de null=True
  • il faudrait valider le contenu d'authorized scope avec une regexp assez simple comme ^[a-z0-9-_*\s]*$, il y un RegexpField je pense sinon utiliser le champs validators sur le modèle
  • ne conserver que la valeur strippé vi la méthode clean du modèle

J'utiliserais un RegexValidator('^[a-z]+([ |\+][a-z]+)+$') afin de n'autoriser que du texte de type: read, read write ou read+write, comme spécifié dans la doc de django-idp-oauth2

#13

Mis à jour par Frédéric Péters il y a plus de 9 ans

  • Statut changé de Solution déployée à En cours
#14

Mis à jour par Jérôme Schneider il y a plus de 9 ans

Le dernier patch Serghei est assez urgent je trouve. Victor est tombé dessus pendant la formation d'Isabelle. Est ce qu'on pourrait pousser ce genre de petit correctif directement avant relecture ?

#15

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

2s je relis.

#16

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

Ok pour moi. Push.

#17

Mis à jour par Serghei Mihai il y a plus de 9 ans

  • Statut changé de En cours à Résolu (à déployer)
  • % réalisé changé de 0 à 100

Appliqué par commit authentic2-idp-oauth2|commit:047746e9d1db2f98d1570ad29d3e089f62b9aa41.

#18

Mis à jour par Serghei Mihai il y a plus de 9 ans

Appliqué par commit authentic2-idp-oauth2|commit:65f1db6ccc648ea2e0d2452e6c7106883452e0aa.

#19

Mis à jour par Benjamin Dauvergne il y a plus de 9 ans

  • Statut changé de Résolu (à déployer) à Fermé

Formats disponibles : Atom PDF