Показаны сообщения с ярлыком iSQL*Plus. Показать все сообщения
Показаны сообщения с ярлыком iSQL*Plus. Показать все сообщения

20 мая 2008 г.

Подключение к iSQL*Plus как SYSDBA или SYSOPER в Oracle 9i

Как sysdba или sysoper можно подключиться через iSQL*Plus в Oracle 9i можно по другому url:
http://hostname:7776/isqlplusdba

По умолчанию на /isqlplusdba включена базовая аутентификация и при перед открытием страницы, запросит имя пользователя и пароль.
Чтоб добавить пользователя для базовой аутентификации в Oracle 9i используется стандартная утилита Apache - htpasswd (в Oracle10g - джава утилита jazn, о ней можно почитать здесь):

oracle@myhost $ cd $ORACLE_HOME/Apache/Apache/bin
oracle@myhost $ ./htpasswd -b $ORACLE_HOME/sqlplus/admin/iplusdba.pw username password
Тепер, при открытие в http://hostname:7776/isqlplusdba можно ввести логин (username) и пароль пользователя (password) и подключиться к базе данных как SYSDBA и SYSOPER.

Или же можно отключить базовую аутентификация в /isqlplusdba закомментировав 4 строчки в ORACLE_HOME/sqlplus/admin/isqlplus.conf:
<Location /isqlplusdba>
SetHandler fastcgi-script
Order deny,allow
#AuthType Basic
#AuthName 'iSQL*Plus DBA'
#AuthUserFile /u01/app/oracle/product/9.2.0.8.0/sqlplus/admin/iplusdba.pw
#Require valid-user
</Location>

Не забудьте перегрузить Apache после изменений:
oracle@hostname $ cd $ORACLE_HOME/Apache/Apache/bin
oracle@hostname $ ./apachectl stop
./apachectl stop: httpd stopped
oracle@hostname $ ./apachectl start
./apachectl start: httpd started
Теперь при открытии http://hostname:7776/isqlplusdba не будет запрашивать логин и пароль.

4 апреля 2008 г.

Подключение к iSQL*Plus как SYSDBA или SYSOPER в Oracle 10g

О подключении к iSQL*Plus как SYSDBA или SYSOPER в Oracle 9i можно почитать здесь.
На http://hostname:5560/isqlplus невозможен доступ под SYSDBA или SYSOPER, если даже в Connect Identifier допишите "as sysdba" после названия базы данных:
ERROR - ORA-28009: connection as SYS should be as SYSDBA or SYSOPER

Чтобы подключиться к iSQL*Plus как SYSDBA или SYSOPER, нужно воспользоваться ссылкой http://hostname:5560/isqlplus/dba.
По умолчанию, доступ к этому URL закрыт, а при попытке попасть получите сообщение:

"Для входа на сервер по адресу iSQL*Plus DBA нужны имя пользователя и пароль. ..."

Для того, чтобы разрешить пользователю подключаться URL к iSQL*Plus DBA, нужно с помощью утилиты JAZN (Java AuthoriZatioN):

1) Создать пользователя для iSQL*Plus DBA URL
2) Назначить ему роль webDba
3) Выйти из jazn и при необходимости перегрузить iSQL*Plus.

Запуск утилиты jazn:

D:\>set ORACLE_HOME=D:\oracle\product\10.2.0

D:\>set JAVA_HOME=%ORACLE_HOME%\jdk

D:\>cd %ORACLE_HOME%\oc4j\j2ee\isqlplus\application-deployments\isqlplus

D:\oracle\product\10.2.0\oc4j\j2ee\isqlplus\application-deployments\isqlplus>%JAVA_HOME%\bin\java -Djava.security.properties=%ORACLE_HOME%\oc4j\j2ee\home\config\jazn.security.props -jar %ORACLE_HOME%\oc4j\j2ee\home\jazn.jar -user "iSQL*Plus DBA\admin" -password welcome -shell

JAZN:>
В unix среде команды аналогичные, только нужно заменить % на $, set на export, и слэши.
JAZN:> adduser "iSQL*Plus DBA" urldba urlpasswd
JAZN:>
JAZN:> listusers
iSQL*Plus DBA/admin
iSQL*Plus DBA/urldba
JAZN:>
JAZN:> grantrole webDba "iSQL*Plus DBA" urldba
JAZN:> exit
Тепер, при входе в http://hostname:5560/isqlplus/dba можно ввести логин (urladmin) и пароль пользователя (urlpasswd) и попасть в iSQL*Plus DBA URL, где есть возможность подключиться к базе данных как SYSDBA и SYSOPER.