Я не могу ответить на ваш вопрос, нужно ли это, поскольку это может быть основано на мнении.Но у меня есть несколько замечаний.
IdentityServer - это реализация OpenID Connect поверх OAuth2.Если вы не хотите использовать OpenID Connect и OAuth2, то IdentityServer может оказаться неподходящим инструментом.
Однако IdentityServer делает больше, чем просто реализует спецификации.Это также разделение обязанностей.
С центральным органом управления приложениям не нужно реализовывать функции входа в систему.В самом простом потоке пользователь входит в систему IdentityServer, предоставляя пользователю токен, и с этим токеном клиент может получить доступ к ресурсу от имени пользователя.Все, что нужно сделать ресурсу, - это проверить полномочия.
Единственная ответственность - это хороший дизайн, отделяющий логику входа в систему от бизнес-логики (разделение проблем) и создающую более безопасную среду.SSO - это просто «побочный эффект», который можно отключить.Ресурс и клиент не должны иметь доступа к таблицам идентификации.
Но речь идет также о защите ваших ресурсов.С IdentityServer довольно легко настроить, какой клиент имеет доступ к какому ресурсу, используя наиболее подходящий поток.
IdentityServer заботится об аутентификации и базовой авторизации.Где аутентификация является ответственностью IdentityServer.В результате все пользователи имеют доступ к каждому клиенту / ресурсу.Авторизация на самом деле является заботой ресурса.Вот почему они придумали PolicyServer .
С авторизацией Asp.Net Core у вас будет много вариантов реализации авторизации.
Я не могу сказать вам, что делать, и я уверен, что все возможно.Но если взглянуть на принципы проектирования, я бы предпочел разделить проблемы.
О вашем коде, семидневное окно доступа довольно велико.Особенно, если вы не можете отозвать токен.
О пользователях, ссылающихся на неправильную страницу, хорошо, вы не можете предотвратить все.