JWTS в пользовательской реализации JWK с весенней загрузкой
Я сделал приложение Angular с серверной частью Spring Boot. Я аутентифицирую пользователей с помощью JWT, где работа в api обрабатывается с помощью JJWT, а фронтальный - с помощью angular-jwt.
Я не собираюсь соответствовать стандарту OAuth2, но у меня нет причин не делать этого. Я не думаю, что мне нужен / я понимаю смысл отдельных серверов ресурсов / аутентификации. Я предполагаю, что идея заключается в том, что пользователь может использовать внешний сервер аутентификации, но в данный момент мне это не нужно.
Я хотел бы подписать токены с помощью SHA256, где открытые ключи будут размещены в JWKS, доступном на общедоступной конечной точке, поэтому мой клиент Angular может получить их для проверки подписей.
Я хотел бы хранить свои сертификаты в моем хранилище ключей pkcs12, где им будет назначен произвольный идентификатор, а истечение срока будет обрабатываться по истечении срока действия сертификатов, поскольку я планирую использовать самозаверяющие сертификаты.
Проблема в том, что я не нашел документации о том, как это сделать. Существует много информации о создании серверов ресурсов / аутентификации s.boot, но не о размещении пользовательского набора ключей.
Я новичок во всех этих технологиях, поэтому дайте мне знать, если я что-то упускаю.
Нужно ли мне все реализовывать с нуля? Должен ли я использовать JJWT для обработки токенов или собственную библиотеку OAauth Spring?