170 похожих чатов

Привет всем! У кого есть опыт по реализации авторизации с помощью

соц сетей в джанго? (django-allauth)
У меня несколько вопросов, я вот реализовал авторизацию через вк.
1) /accounts/vk/login/?method=oauth2 использую для авторизации, для регистрации тоже его использую?
Потому что когда делаю авторизацию у меня в базе в users_user создалась запись и туда записался еще пароль какой-то (будто заодно сделал регистрацию)
2) Что делать с шифрованием пароля? Я вот в базе смотрю все пользователей и этот юзер который пришел с соц сетей отличается шифрование password. Он берет пароль от той соц сети и сохраняет его в мой проект? Если это так, то как мне сохранить в моей расшифровке. Сейчас я пробую с нового аккаунта логин сделать пишу все пароли которые знаю и wrong password.
3) Я понял что для вк можно отправить redirect_url, чтобы после авторизации редиректил на главную страницу сайта, но если пользователь новый я хотел бы отправить его в страницу регистрации, чтобы он дополнил инфу о себе. Где можно такую логику прописать?
4) Я в конфигах прописал:
ACCOUNT_EMAIL_REQUIRED = True
ACCOUNT_EMAIL_VERIFICATION = "mandatory"
ACCOUNT_USERNAME_REQUIRED = False
ACCOUNT_AUTHENTICATION_METHOD = 'email'
И пробовал с аккаунта ВК где не привязана почта, и он у меня эту авторизацию обработал и вернул 200 статус, НО пользователь не создался потому что email is required. Как можно в таких случаях поступить?
Так мало инфы в документациях)

3 ответов

16 просмотров
Alisher-Tassanov Автор вопроса

Нашел некоторые ответы на свои вопросы, если кому-то пригодится отвечу здесь: 1) В зависимости от провайдера 2) Пароль на самом деле во время входа через соц-сеть не используется и он практический не нужен, НО чтобы ваши аккаунты были привязаны к одному единому, нужно после аутентификации просить пользователя ввести почту(если ее нет с соц сети) и пароль придумать (чтобы мог заходить и без соц-сетей). Тут у меня все еще вопросы есть, нужно ли привязывать аккаунты разных соц сетей? Допусти я зарегался с vk и у меня там стоит определенная почта gmail, и вход через google тоже чтобы норм работал. 3) Тут видимо нужно написать метод который будет отлавливать такие моменты 4) В некоторых соц сетях например в Twitter/Apple можно скрывать имейл и она не всегда может поступать во время авторизации, так что если нету email нужно пользователя просить ввести и отправить запрос на подтверждение на почту и тд.

А зачем привязываться к почте вообще? Привязывай все входы к какому-нибудь uuid пользователя. Да и пароль не обязательно генерировать, если он не планирует под ним заходить. А то он может удивиться потом.

Alisher-Tassanov Автор вопроса

Просто в этом проекте вход через email делается. Я хотел бы если юзер регается через ВК записать его почту и когда он будет заходить с вк, у него был выбор зайти и обычным входом тоже

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта