Недавно я начал с Vapor4 (не использовал старую версию) и пытаюсь понять, как реализовать авторизацию и аутентификацию пользователей. Хотя я понимаю основные концепции c, поработав с Laravel раньше, я все еще не могу понять, что делать в паре.
Я расширил своего пользователя с помощью. Ik нет хеширования pw, это для тестирования и базового понимания c. Мы пока проигнорируем это.
extension User: ModelAuthenticatable
{
static let usernameKey = \User.$name
static let passwordHashKey = \User.$password
func verify(password: String) throws -> Bool {
return password == self.password
}
}
Проблема в том, что я не могу найти руководство, как использовать эту аутентификацию. Я просто пытаюсь заставить его работать, но безуспешно. Это находится в моем файле маршрутов.
let auth = app.grouped(User.authenticator())
auth.get("sign-in") { req in
"I'm authenticated"
}
Моей первой целью было бы просто получить успешный или неудачный ответ при попытке использовать этот маршрут. В конечном итоге я хочу переключиться на решение на основе токенов, но по одному шагу за раз.
я прочитал: https://docs.vapor.codes/4.0/authentication/ и https://theswiftdev.com/all-about-authentication-in-vapor-4/ . Как бы то ни было, я не мог не разобраться, как пользоваться описанными аутентификаторами.