Я завершаю работу над приложением Java EE 6. Приложение было разработано с использованием GlassFish, но я хочу сделать его переносимым между различными серверами приложений.
Безопасность была реализована путем определения пользователей и групп в источнике данных приложения, а также с использованием jDbcRealm GlassFish. Я знаю, что подобные реализации существуют на других серверах приложений (хотя я еще не рассматривал детали).
Чтобы сделать мое приложение переносимым, мне нужно понять, можно ли сопоставить роли безопасности и принципалов / пользователей на самом сервере приложений или в исходном коде приложения без использования специфичный для сервера приложений дескриптор развертывания glassfish-web.xml
или эквивалентный. Это позволило бы избежать задачи развертывания редактора файла .war
, что мне бы хотелось, поскольку приложение должно быть переносимым.
Поскольку я сопоставил роли с определенными в приложении группами с одинаковыми именами, код, который я хотел бы удалить, -
<security-role-mapping>
<role-name>RoleGroup1</role-name>
<group-name>RoleGroup1</group-name>
</security-role-mapping>
<security-role-mapping>
<role-name>RoleGroup2</role-name>
<group-name>RoleGroup2</group-name>
</security-role-mapping>