Я пишу поставщика JACC
.
По пути это означает реализацию PolicyConfiguration
.
PolicyConfiguration
отвечает за прием информации о конфигурации с сервера приложений, например, какие разрешения связаны с ролями. Это значит, что Policy
позже может принимать решения о авторизации при передаче информацию о текущем пользователе и о том, что он пытается сделать.
Однако он не является частью контракта PolicyConfiguration
(ужасный) для поддержания сопоставления между ролями и их разрешениями и Principals
, которые назначаются этим ролям.
Обычно - всегда, действительно - сервер приложений размещает это сопоставление. Например, на Glassfish вы влияете на это сопоставление, поставляя такие вещи, как sun-web.xml
и sun-ejb-jar.xml
, и так далее с вашими модулями Java EE. (Эти файлы, зависящие от поставщика, отвечают за высказывание, например, superusers
- это группа, которой должна быть назначена роль приложения admins
.)
Я хотел бы повторно использовать функциональность, поставляемую этими файлами, и я хотел бы сделать это для как можно большего массива серверов приложений.
Здесь - совершенно произвольно - IBM взяла на себя этот вопрос, который, похоже, подтверждает мое подозрение, что я хочу сделать практически невозможным. (Больше боеприпасов к моему делу, что этот конкретный контракт Java EE не стоит того, на котором он был напечатан.)
Мой вопрос:, как я могу получить эту информацию для сопоставления главной роли для - для стартеров - Glassfish и JBoss изнутри PolicyConfiguration
? Если есть стандартный способ сделать это, о котором я не знаю, я все уши.