JDBC через BPXBATCH - как получить учетные данные пользователя TSO?

У меня есть небольшая Java-программа, которая читает таблицу db2 через jdbc. Эта программа вызывается через "tso bpxbatch myjavatool".

Интересно, есть ли возможность "передать" имя пользователя / пароль моего пользователя TSO в драйвер JDBC?

Например, если я подключаюсь к DB2 с помощью простого сценария REXX, мне не нужно снова указывать свое имя пользователя / пароль, и DB2/RACF проверяет, разрешено ли моему пользователю выполнять SQL.

Теперь мой инструмент Java работает не в моем адресном пространстве TSO, а под управлением J9 в адресном пространстве USS...

Есть ли способ автоматического входа в DB2 с текущим пользователем TSO?

1 ответ

Решение

Я не знаю слишком много о BPXBATCH, но я предполагаю, что вы все еще работаете под своим собственным идентификатором пользователя в USS-address-space.

В вашем java-коде вы сможете получить свой идентификатор пользователя через

String user = System.getProperty("user.name");

Что касается пароля, вы можете попробовать вместо этого использовать RACF-Passtickets. Есть библиотека IRRRacf.jar в /user/include/java_classes и соответствующий Javadoc в IRRRacfDoc.jar в том же каталоге. код для генерации Passticket довольно прост:

IRRPassTicket generator = new IRRPassTicket();   
String ptkt = generator.generate(user,applid);

тогда просто передайте passticket вместо пароля, и все будет в порядке.

Увы, есть несколько аспектов, в которых вы должны убедиться, прежде чем использовать этот подход:

  • Настройте RACF для использования Passtickets for DB2 - возможно, он уже настроен, в противном случае вам придется настроить надлежащие профили в классе PTKTDATA (подробнее см. Документацию RACF)
  • Убедитесь, что у каждого пользователя, выполняющего код, есть соответствующая авторизация RACF для использования вызываемой службы r_ticketserv (снова см. Документацию RACF).
  • Найти правильное название приложения (applid) для вашей DB2-системы. Смотрите DB2-документацию по использованию passtickets.
Другие вопросы по тегам