Django: L'application de décorateurs de contrôle d'accès multiples à vue

voix
1

Je tente d'exposer un appel API unique à l'aide de trois mécanismes d'authentification différents: le login_required de django, HTTP auth de base et OAuth. Je décorateurs pour tous les trois mais ne peut pas tout à fait comprendre comment les ont tous se entendent bien.

La logique requise est de permettre l'accès à la vue si des décorateurs / mécanismes d'authentification sont valides pour la demande de l'utilisateur - essentiellement un OU. Cependant, si je les trois simplement inclure décorateurs ils veulent tous être satisfaits avant de laisser la demande à travers - un ET.

Ce qui est une bonne façon de régler ce problème?

Créé 27/08/2009 à 01:10
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
3

Je ne suis pas sûr que vous pouvez. Supposons que l'utilisateur ne soit pas connecté: si vous utilisez login_requiredle serveur se rediriger vers un formulaire de connexion, alors que l' utilisation auth de base, le serveur renvoie une page d'erreur 401 avec un en- WWW-Authenticatetête de réponse. Lequel de ces voulez-vous arriver? Je ne vois pas comment il pourrait être à la fois.

Créé 27/08/2009 à 01:28
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more