2013-11-26 3 views
0

Я читал о множестве различных приложений для django для интеграции социальной аутентификации в проекты django. Но, у меня есть некоторые проблемы с пониманием того, как эта интеграция работаетпользовательская система с социальной аутентификацией в django

Разве это расширяет модели USER по умолчанию? Где я могу найти такую ​​информацию в приложениях?

Мне нужна система пользователя, в которой есть группы (для целей разрешения). Пользователь сможет зарегистрироваться с использованием общего регистрационного процесса или facebook. Смогу ли я добиться этого с помощью любого вида приложений?

Заранее спасибо.

ответ

1

Существует приложение под названием django-allauth. Если вы прочтете их официальную документацию, ее довольно легко следовать. В соответствии с их инструкциями вы устанавливаете основное приложение и любую другую необходимую вам аутентификацию (например, facebook, oauth, которую использует Google). Затем вам нужно перейти на facebook, получить ключ разработчика и добавить его в свой администратор django.

В принципе, когда кто-то пытается войти в систему с помощью facebook, процесс signin отправляет ключи в facebook и проверяет, существует ли пользователь. Если это так, то приложение аутентификации создает пользователя на бэкэнд, как обычный процесс signin. Вы можете получить javascript из facebook, чтобы создать окно входа в систему.

+0

Спасибо за ответ. Когда вы написали «нормальный процесс ввода», вы имели в виду, что ВСЕ пользователи будут храниться в одном месте? Те, кто зарегистрирован через facebook и зарегистрирован через обычную регистрацию? Смогу ли я установить группы и разрешения? Смогу ли я ссылаться на каждого отдельного пользователя по ID, который будет уникальным независимо от процесса регистрации? –

+0

Если вы посмотрите на их исходный код: https://github.com/pennersr/django-allauth/blob/master/allauth/account/forms.py, похоже, что процедура входа в систему пользователя одинакова независимо от метода , До тех пор, пока у вас есть имя пользователя и пароль и активны в бэкэнд, вы можете войти в систему. Возьмите мою точку зрения с солью, но, похоже, вы должны иметь возможность управлять ими, так как вы будете управлять «нормальными пользователями». Это не занимает много времени; вы можете сделать снимок и посмотреть. – user2707389

+0

Итак, если пользователь зарегистрируется с использованием facebook, ему нужно будет создать имя пользователя и пароль? –

Смежные вопросы