Releases: PnX-SI/UsersHub-authentification-module
Releases · PnX-SI/UsersHub-authentification-module
3.2.1
🚀 Nouveautés
- Ajout d'un paramètre
is_secondarydans la classeAuthentication(#144 par @IdrissaD) - Ajout du paramètre
FIELDS_TO_OVERRIDEau connecteur OpenID. Ce paramètre permet de lister les champs danst_rolesqui seront mis à jour lors de la connexion avec le fournisseur d'identité. (#134 par @christophe-ramet) - Ajout du paramètre
AUTO_VALIDATE_NEW_USERau connecteur OpenID pour piloter la validation manuelle de nouveaux comptes (#142, par @edelclaux)
🐛 Corrections
- Correction de la réconciliation dans le connecteur OpenID (prise en compte de
RECONCILIATE_ATTRet fallback de l'identifiant) (PnX-SI/GeoNature#3993 par @jacquesfize) - Arrêt de l'utilisation de
pkg_resources(#149 par @christophe-ramet) - Ajout d'exceptions d'authentification dédiées avec codes d'erreur normalisés (
INCORRECT_LOGIN,PENDING_VALIDATION, etc.) (#153 par @christophe-ramet et @edelclaux)
3.2.0
🚀 Nouveautés
- Compatibilité avec Debian 13 (#131 par @Pierre-Narcisi)
- Ajout de contraintes d'unicités sur les colonnes
t_roles.identifiant,t_roles.uuid_roleetbib_organismes.nom_organisme(#141 par @jacquesfize) - Création de la classe
UserManagerqui reprend les méthodes déclarées danssubscribe.pyet intègre de nouvelles méthodes pour vérifier la validité d'un mot de passe (nombre min. de caractère, présence de majuscule, etc.) (#126 par @christophe-ramet) - Ajout de méthodes dédiées à l'ajout, la modification et la suppression d'organismes (#130 par @VincentCauchois)
- Ajout d'un paramètre
CODE_CHALLENGE_METHODdans le provider OpenIDConnect (#133 par @christophe-ramet) - Ajout d'une méthode permettant de changer le mot de passe d'un utilisateur (#132 par @christophe-ramet)
- Ajout des colonnes
api_keyetapi_secretdans la tablet_roles(par @christophe-ramet et @jacquesfize)
🐛 Corrections
- Correction de la prise en compte du paramètre
PASS_METHODetFILL_MD5_PASSpermettant de désactiver l'utilisation du MD5 (#145 par @jacquesfize) - Dans le provider pour OpenID, l'identifiant s'appuie sur une variable de configuration (par défaut,
preferred_username) (#138 @edelclaux)
3.1.0
🚨 Breaking Changes
- La route
/post_usershuba été supprimée. Pour utiliser l'API de UsersHub, il est maintenant nécessaire d'utiliser les routes directement accessibles depuis cette dernière (#125 par @jacquesfize)
🚀 Nouveautés
- Ajout de méthodes dédiées à la création utilisateur et la modification du mot de passe disponible dans
pypnusershub.auth.subscribe(#125 par @jacquesfize et @amandine-sahl ) - Ajout des derniers modèles SQLAlchemy manquant des tables dans schéma
utilisateurs(#125 par @jacquesfize)
3.0.4
🐛 Corrections
- Renforcement de la sécurité de la route d'interaction avec UsersHub (#124 par @christophe-ramet)
3.0.3
🐛 Corrections
- [Commande Flask] Complétion de la commande
user addpermettant d'indiquer le nom et le prénom de l'utilisateur (par @jacquesfize) - [Commande Flask] Suppression d'un import qui faisait dysfonctionner UsersHub 2.4.5 (par @jacquesfize)
- [Utilisateur] Correction de la suppression d'un utilisateur avec une entrée dans
cor_role_provider(#119 par @jacquesfize)
3.0.2
🚀 Nouveautés
- Ajout des champs
meta_create_dateetmeta_update_dateà la tablebib_organismes(#96 par @lpofredc). - Ajout de commandes
flaskpour ajouter/modifier des utilisateurs et changer leur mot de passe (#53 par @jacquesfize)
3.0.1
🐛 Corrections
- Correction d'un problème de redirection lors de la déconnexion
- Utilisation du schéma marshmallow pour le retour de la route
/auth/public_login - Ajout du décorateur
@serializablesur la classeProvider
3.0.0
🚀 Nouveautés
- Enrichissement des modes de connexions avec l'implémentation de
AuthManager(#93). Plusieurs protocoles
de connexions sont disponibles : par défaut, OpenID, OpenIDConnect, UsersHub-authentification-module externe.
- Remplacer l'initialisation du
login_managerpar celle duauth_managerlors de l'initialisation de votre
application Flask comme dans l'exemple ci-dessous :
from pypnusershub.auth import auth_manager
providers_config = [
{
"module" : "pypnusershub.auth.providers.default.LocalProvider",
"id_provider":"local_provider"
},
]
auth_manager.init_app(app,providers_declaration=providers_config)