web2py AWS cognito аутентификация - PullRequest
       15

web2py AWS cognito аутентификация

0 голосов
/ 13 сентября 2018

Я изменяю аутентификацию при входе в систему, которая будет обрабатываться AWS Cognito, и требую некоторого разъяснения относительно подхода, поскольку не могу заставить его работать правильно

  1. Я создал класс cog_login, который был назначен на

auth.settings.login_methods = [cog_login]

  1. Одна из функций в классе называется authenticate (), которая принимает аргументы имени пользователя и пароля, которые пользователь вводит из стандартных форм web2py user / login

  2. В контроллере def user () по умолчанию у меня есть следующее:

cog_login (). Authenticate (request.vars.email, request.vars.password)

Это запрашивает AWS и возвращает True, если прошло, False в противном случае.

  1. Мне не ясно, что делать с ответом True, False в def user (), так как он не заполняет auth.user, который всегда остается равным None.

  2. Я пытался заставить население auth.user получать содержимое auth_user, то есть auth.user = row [0]. Это заполняет auth.user при выполнении тестов auth.is_logged_in () приводит к ответу True.

Однако при продолжении через def user () стандартное перенаправление onlogin не перенаправляет на главную страницу, указывая, что web2py не записывает это как принятую аутентификацию.

  1. Я также попытался перенаправить, если "auth.is_logged_in ()", но декораторы @ auth.requires_login на главной странице не обнаруживают логин и перенаправляют обратно на страницу входа.

Является ли этот подход правильным, мне кажется, что я пропускаю шаг, который связывает успешную регистрацию в AWS с Web2py

...