Предположим у меня есть некая API в которой есть некая логика и это все отлично работает, но я понимаю что мне нужны юзеры и роли, конечно, я могу пойти и создать табличку и с теми и с другими и реализовать это, однако у меня вопрос, неужели я правда должен делать это? Реализовывать регистрацию, смену пароля, заботится чтобы это было безопасно, удобно, и производительно? Почему когда мне нужно хранить условные JAR пакеты, я в состоянии поставить себе хранилку и просто настроить ее, а с пользователями все гайды которые я вижу сводятся к описанию протоколов OpenID/Oauth2. Мне не очень понятно, неужели нет хорошей опенсурс реализации всех действий связанных с юзерами?
Погуглив я наткнулся на понятие identity & access management (IAM) и как я понял, такие системы как раз и позволяют реализовать что то подобное, Самые адекватные это Gluu, CAS, Keycloak. Но поглядев на них, понимаешь что это тоже своеобразный комбайн всякого. Там тебе и Web admin, и тут же прикрученный OpenId для твоих клиентов, и интеграция с AD. Но мне не понятно, действительно ли мне нужен такой большой инструмент, и я все равно не понимаю где он в итоге будет хранить юзеров, и надо ли мне реализовывать методы регистрации и смены пароля.
Есть ли какие то коробочные готовые решения на этот счет, или только табличка с юзерами в моей апишке меня спасет?