Подтвердить что ты не робот

Несколько Auth в Yesod?

Мне нужно указать несколько типов аутентификации в моем приложении; в частности: некоторые части приложения требуют аутентификации для удаления, а некоторые части требуют аутентификации на основе электронной почты, такой как browserID.

Как я могу справиться с этим?

Можно ли подключить аутентификацию к дочернему сайту? Поскольку класс YesodAuth принимает тип данных основного фундамента как свой аргумент во всех примерах, неясно, как я могу это сделать.

Если нет, есть ли другой способ?

4b9b3361

Ответ 1

Извиняется, если мой ответ немного туманный (прошло несколько месяцев с тех пор, как я использовал Yesod, и цикл dev был довольно быстрым), но если я правильно помню, вы можете указать несколько вариантов аутентификации в классе YesodAuth ( browserID, google и т.д.), и в этом случае пользователю будет предоставлен параметр, который будет использоваться при каждом запросе на аутентификацию. Что-то вроде:

authPlugins _ = [ authBrowserId , authGoogleEmail ]

и др.

Можно ли явно указать один тип авторизации для каждого обстоятельства, о котором я не знаю, я боюсь, и независимо от того, решит ли я вашу проблему, я не уверен.