Django: применение декораторов управления множественным доступом к представлению - PullRequest
1 голос
/ 27 августа 2009

Я пытаюсь представить один вызов API, используя три разных механизма аутентификации: django login_required, базовая аутентификация HTTP и OAuth. У меня есть декораторы для всех трех, но я не могу понять, как сделать так, чтобы они все ладили.

Требуемая логика - разрешить доступ к представлению, если какой-либо из декораторов / механизмов аутентификации действителен для запроса пользователя - в основном, ИЛИ. Однако, если я просто включу все три декоратора, то все они хотят быть удовлетворены, прежде чем пропустить запрос - AND.

Какой хороший способ справиться с этим?

1 Ответ

3 голосов
/ 27 августа 2009

Я не уверен, что ты можешь. Предположим, что пользователь не вошел в систему: при использовании login_required сервер перенаправит на форму входа в систему, тогда как при использовании обычной аутентификации сервер вернет страницу ошибки 401 с заголовком ответа WWW-Authenticate. Что из этого вы хотите, чтобы произошло? Я не понимаю, как это может быть и то и другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...