2017-07-20 1 views
0

J'ai un problème lorsque je tente de config ma principale application de la pyramide: Avant ma config est la suivante: (je authentification au sein de la session de la pyramide)Puis-je config principale App de Pyramid avec JWT pyramide JWT et SessionAuthenticationPolicy

authn_policy = SessionAuthenticationPolicy() 
authz_policy = ACLAuthorizationPolicy() 

# configuration de pyramid : on utilise le données renseignées dans le 
# fichier de config (settings), les données d'authentification 
config = Configurator(
    settings=settings, 
    root_factory=RootFactory, 
    authentication_policy=authn_policy, 
    authorization_policy=authz_policy, 
    session_factory=session_factory, 
) 

puis lorsque je tente d'ajouter la configuration JWT cela ne fonctionne pas parce que je l'ai déjà authentication_policy = authn_policy, au-dessus:

# New configuration of JWT authentification for Pyramid 
# Enable JWT authentication. 
config.include('pyramid_jwt') 
config.set_jwt_authentication_policy('secret') 

Je voudrais utiliser les deux solutions d'authentification, SessionAuthentificationPolicy et pyramidale JWT?

Erreur: pyramid.exceptions.ConfigurationConflictError: actions de configuration contradictoires

+0

Avez-vous vérifié les documents? Il y a un exemple dans la documentation qui illustre un problème similaire et comment le résoudre avec 'pyramid.config.Configurator.commit()': https://docs.pylonsproject.org/projects/pyramid/en/latest/narr/extconfig .html # using-config-action-dans-une-directive –

+0

J'ai trouvé ce chemin https://docs.pylonsproject.org/projects/pyramid-cookbook/en/latest/configuration/whirlwind_tour.html#resolving-conflicts N'ayez pas d'erreur mais mon application ne fonctionne pas KO –

+1

Assurez-vous d'abord que chaque méthode "fonctionne" lorsqu'une seule méthode d'authentification est configurée à la fois. Ensuite, essayez d'utiliser les deux. Fournissez également la trace de pile complète au lieu du juste le dernier message d'erreur. Enfin, il pourrait être utile de fournir un exemple reproductible dans un dépôt public. Pour moi, deux méthodes d'authentification est une de trop et je ne l'ai jamais essayé, donc peut-être un développeur Pyramid plus expérimenté peut fournir une assistance supplémentaire. –

Répondre