Pourquoi Django redirige-t-il l'utilisateur vers la page de connexion lorsqu'il tente d'accéder à des pages protégées par des autorisations? Cela n'aurait-il pas plus de sens d'élever 403? Ensuite, je pourrais afficher un message significatif dans 403.html (en utilisant un middleware personnalisé) à l'utilisateur en disant qu'ils n'ont pas les autorisations pour effectuer l'action. En outre, je serais en mesure d'identifier les liens vers des vues que l'utilisateur ne devrait même pas être présenté à la première place ou les utilisateurs essayant d'accéder aux ressources interdites.Django - rediriger vers la page de connexion par rapport à 403
4
A
Répondre
2
Si vous parlez du décorateur login_required
, il n'y a aucune raison pour que ait pour l'utiliser. Vous pourriez écrire un décorateur similaire qui a fait exactement ce que vous recherchez (renvoyer une réponse 403).
Malheureusement, le login_required
decorator code est en fait quelque peu complexe, il ne serait donc pas trivial de simplement copier/modifier pour vos besoins, car la partie de redirection est en fait dans la fonction user_passes_test
qu'ils utilisent.
Questions connexes
- 1. Rediriger vers la page de connexion https
- 2. Silverlight rediriger vers la page de connexion
- 3. asp.net rediriger vers la page de connexion
- 4. Comment rediriger vers la page d'erreur prédéfinie?
- 5. Django - rediriger vers la page de connexion si la requête correspondante UserProfile n'existe pas Erreur
- 6. rediriger les utilisateurs vers la page de connexion
- 7. Django redirige vers la page précédente après connexion OAuth externe
- 8. rediriger vers la page membre
- 9. rediriger vers la page suivante
- 10. Rediriger vers une page spécifique après la connexion
- 11. Rediriger la page Connexion/Inscription de Wordpress vers une page de connexion/d'enregistrement personnalisée
- 12. rediriger vers la page actuelle
- 13. Rediriger vers la page d'erreur de l'hôte
- 14. Navigation JSF rediriger vers la page précédente
- 15. Redirection vers la page de connexion
- 16. Rediriger vers la page de connexion à certaines conditions du contrôle de session
- 17. Rediriger vers une page
- 18. Pylons rediriger vers la page d'erreur 404
- 19. Django rediriger vers un swf
- 20. asp.net: rediriger vers la page après confirmation?
- 21. Rediriger l'image vers la page php
- 22. Comment rediriger vers la page de connexion lorsque la session a expiré (ASP.NET 3.5 FormsAuthen)
- 23. Rediriger l'utilisateur vers la page d'origine
- 24. Rediriger la page http vers https
- 25. comment rediriger vers la page d'accueil
- 26. comment rediriger vers la page principale
- 27. Rediriger l'utilisateur vers la page d'erreur dynamique
- 28. curl rediriger vers la mauvaise page?
- 29. javascript: rediriger vers une page?
- 30. Rediriger vers une nouvelle page
En savoir plus sur permission_required decorator. Je pourrais écrire décorateur personnalisé, je suis d'accord. Mais ma question est, ne devrait-il pas être le traitement standard de Django? Je n'ai pas accès, je suis connecté - envoyer 403 et le développeur doit définir 403.html. – Tomas
Dans ce cas, consultez [ticket 5515] (http://code.djangoproject.com/ticket/5515) ou [ce middleware personnalisé] (http://chronosbox.org/blog/manipulando-erros-http-403 -permissao-negada-no-django? lang = fr) –
Merci. J'ai décidé d'aller avec le middleware personnalisé. J'ai juste pensé que ce serait bien si Django supportait le 403 sans middleware personnalisé. – Tomas