JPA / Hibernate с Oracle Label Security - PullRequest
       16

JPA / Hibernate с Oracle Label Security

4 голосов
/ 26 января 2010

У меня есть приложение, созданное на основе Spring и JPA / Hibernate, которое работает очень хорошо, но теперь у меня есть требование добавить Oracle Label Security. Это потребует создания прокси-пользователя, которому назначены определенные роли в дополнение к фактическому пользователю. Мне неясно, что входит в persistence.xml и что идет в коде. Кроме того, если мы хотим стать действительно модными, мне бы хотелось узнать, как Spring может внедрить надлежащий контекст персистентности с сопоставлением пользователя с прокси-пользователем.

Если у кого-то есть опыт в этом, приветствуется любое понимание.

спасибо.

1 Ответ

0 голосов
/ 18 мая 2012

Я бы подошел к этому следующим образом:

Для начала ознакомьтесь с основами аутентификации через прокси. Эта статья выглядит многообещающе: https://blogs.oracle.com/olaf/entry/using_oracle_proxy_authenticat

Предполагая, что у вас есть Webapplication (или что-то еще с одной точкой входа), создайте Фильтр, который принимает запрос, идентифицирует пользователя, устанавливает пользователя в базе данных с использованием прокси-аутентификации, а затем направляет запрос.

Таким образом, ваше приложение будет видеть только правильные соединения с правильным пользователем, установленным. Так что ваша конфигурация Hibernate не должна зависеть от этого.

Одно предупреждение: вы, вероятно, используете пулы соединений. Эти пулы могут передавать не реализацию JDBC в Oracle, а оболочку, с помощью которой вы должны получить доступ к необходимым функциям Oracle. Убедитесь, что ваше приложение все еще использует оболочку, в противном случае пул соединений не заметит никаких исключений, генерируемых соединением, тем самым не распознает разорванные соединения и будет передавать их снова и снова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...