Предоставление пользователям ограниченного доступа только в том случае, если они успешно приобрели с нашивки - PullRequest
0 голосов
/ 11 марта 2020

Я создаю реагирующий сайт, где пользователи могут приобрести пропуск «на день», «еженедельно» или «ежемесячно» для контента на странице. Я только хочу разрешить им доступ на один день, если они купят дневной билет. То же самое для еженедельных и ежемесячных. Я использую JWT, чтобы держать пользователей вошедшими в систему. Я понятия не имею, как создать функциональность, чтобы проверить, должны ли они по-прежнему иметь доступ или нет. Хотелось бы помочь. Я также использую избыточность, если это помогает.

1 Ответ

1 голос
/ 11 марта 2020

Вам нужно начать думать о Аутентификация и авторизация отдельно. Ваши JWT (надеюсь) выполняют обязанности аутентификации. «Ограниченный доступ», о котором вы спрашиваете, касается авторизации. Другими словами: теперь, когда вы знаете, кто этот пользователь, что ему разрешено делать?

Вам необходимо сопоставить свои JWT с каким-либо внутренним идентификатором пользователя, а затем определить, могут ли они получить доступ к запрошенный ресурс / конечная точка / et c.

Например, вы можете разрешить всем пользователям ПОЛУЧИТЬ с /jobs просмотр списка объявлений о вакансиях, но если они попытаются от POST до /apply для работы вы подтверждаете, что они «премиум», и у них остается время на платную подписку.

...