javax.security - это слишком сложный API. В результате есть разработчики не только LoginModules, но и всего API аутентификации и авторизации, которые создают вышеупомянутый уровень абстракции, как менеджеры аутентификации и авторизации.
Для начала, хорошо бы напечатать это в вашу память.
Во-вторых, imho, самой простой библиотекой JAAS для установки и запуска является Jboss PicketBox . В нем рассказывается, как выполнять аутентификацию и авторизацию через JBossAuthenticationManager и JBossAuthorizationManager ... Легко настраивается через XML или аннотации. Вы можете использовать его для управления как веб-приложениями, так и автономными приложениями.
Если вам нужна часть авторизации для управления доступом к репозиторию, с точки зрения ACL для ресурсов, это именно то, что вы ищете.
Проблема с безопасностью заключается в том, что обычно вам нужно настроить ее под свои нужды, поэтому вы можете в конечном итоге реализовать:
LoginModule - проверяет имя пользователя + пароль
CallbackHandler используется следующим образом new LoginContext("Sample", new MyCallbackHandler());
CallbackHandler передается базовым модулям LoginModules, чтобы они могли общаться и взаимодействовать с пользователями - например, запрашивая имя пользователя и пароль через графический интерфейс пользователя. Таким образом, внутри обработчика вы получаете имя пользователя и пароль от пользователя, и они передаются в LoginModule.
LoginContext - тогда вы просто вызываете lc.login (); и подтвердить подлинность учетных данных. LoginContext заполняется аутентифицированным субъектом.
Однако Jboxss picketbox дает вам действительно простой способ, если вам не нужно что-то конкретное.