Ограничить доступ к пулу соединений в Weblogic? - PullRequest
0 голосов
/ 22 февраля 2010

Короче говоря, как я могу ограничить доступ к пулу соединений X на основе имени приложения или имени JAR? Простой вариант использования может помочь ...

Бизнес-веб-приложение (назовите его WEB_APP_A) использует пул Y для базового поиска SQL. Некоторые пользователи этого веб-приложения могут также обновлять некоторые конфиденциальные данные в базе данных. Этот код предоставляется файлом JAR (назовите его HR_JAR), который может быть добавлен в случае необходимости. Этот JAR использует пул X для всех своих соединений.

Мы не хотим, чтобы разработчики WEB_APP_A использовали пул X. Мы только хотим, чтобы HR_JAR использовал пул X. Это сделано для того, чтобы разработчики WEB_APP_A не могли случайно или преднамеренно злоупотреблять предоставленным пулом доступа X.

Некоторые соображения:

  1. Это устаревший код, поэтому HR_JAR останется здесь
  2. Мы работаем на Weblogic 9.2
  3. Мы не можем хранить пароли ни в одном из исходных кодов
  4. Мы исследовали пользовательский уровень weblogic authn / authz для ресурсов JDBC, но тогда возникает вопрос; Как мы обеспечиваем кредиты пользователей, которые мы используем, чтобы стать пользователями для каждого приложения / банки?

Идеи? Мысли? Я могу подробнее рассказать о том, что я пробовал, но я хотел свежих идей.

Ответы [ 2 ]

0 голосов
/ 03 декабря 2010

Насколько я могу судить, нет хорошего способа сделать это. Есть несколько хитрых трюков с AspectJ, но в итоге это больше проблем, чем стоит.

0 голосов
/ 23 февраля 2010

Никогда не пробовал этого и не имею доступа к экземпляру для воспроизведения прямо сейчас, но в вашей конфигурации JDBC вы можете попробовать добавить элемент <scope> для приложения против пула X внутри <jdbc-data-source-params> I подумайте ... Хотя это предполагает, что у вас есть отдельное приложение, определенное для HR.jar, что, я не уверен, так из вашего описания. Я не знаю, можете ли вы ограничить использование отдельного JAR-файла в приложении.

...