воскресенье, 27 ноября 2011 г.
Восстановление пароля weblogic
Для безопасного хранения паролей в Weblogic server предусмотрено их шифрование с помощью алгоритмов 3DES или AES. Шифрованные пароли и логины хранятся в конфигурационных файлах домена (config.xml), конфигурационных файлах источников данных ($DOMAIN_HOME/config/jdbc/Datasource_name.xml ), в файле для запуска серверов без ввода пароля (boot.properties) и т.д. Ключ хранится в файле SerializedSystemIni.dat
Зашифрованные этими ключом данные при наличии доступа к ключу шифрования могут быть расшифрованы.
под катом - маленький класс, позволяющий это сделать.
На вход утилите требуются путь к домену и зашифрованный пароль. На выходе - дешифрованный пароль.
перед запуском необходимо добавить в переменную CLASSPATH директорию, где находится скомпилированный класс и путь к файлу weblogic.jar
например, вот так:
понедельник, 14 ноября 2011 г.
установка APEX на хост c EM Grid Control 11 Upd 29.11
Установка APEX на хост с EM Grid Control 11g.
Я буду использовать конфигурацию APEX + Oracle HTTP server: Scenario 3
Для этого требуется установить и сконфигурировать 2 инстанса:
1. Oracle DB с компонентом APEX.
2. Oracle HTTP server. (Компонент Oracle Web Tier).
Установка компонента БД
1. Download дистрибутив с OTN.
2. Копирование в Oracle_homecp apex_4.1_en.zip $ORACLE_HOME/3. Распаковка
unzip apex_4.1_en.zip5. Установка
cd $ORACLE_HOME/apex
sqlplus / as sysdba7.Установка пароля администратора
@apexins SYSAUX SYSAUX TEMP /i/
sqlplus / as sysdba8. Включение аккаунта APEX_PUBLIC_USER
@apxchpwd
sqlplus / as sysdbaНастройка ORACLE_HTTP_SERVER
ALTER USER APEX_PUBLIC_USER ACCOUNT UNLOCK
ALTER USER APEX_PUBLIC_USER IDENTIFIED BY PASSWORD
В этом примере я использую компонент Web Tier, установленный вместе с Oracle Enterprise Manager Grid Control 11g. Инстанс Oracle HTTP Server уже сконфигурирован в директории /opt/oracle/gc_inst/WebTierIH1 и для его работы с APEX необходимо немного изменить конфигурацию.
Для проверки его состояния инстанса можно использовать команды opmnctl
$ export ORACLE_INSTANCE=/opt/oracle/gc_inst/WebTierIH1В моём случае вывод команды выглядит так:
$ /opt/oracle/middleware/oms11g/opmn/bin/opmnctl status
Processes in Instance: instance1
------------------------+---------------+--------+---------
ias-component | process-type | pid | status
------------------------+---------------+--------+---------
ohs1 | OHS | 1343 | Alive
Для старта/остановки сервера можно пользоваться командами
$ /opt/oracle/middleware/oms11g/opmn/bin/opmnctl startproc ias-component=ohs1
$ /opt/oracle/middleware/oms11g/opmn/bin/opmnctl stopproc ias-component=ohs1
1. В конфигурации APEX + Oracle HTTP Server изображения для web-страниц не хранятся в базе данных. Страницы с изображениями пользователю отправляет Apache-сервер, поэтому их нужно скопировать из дистрибутива в то место, где Apache сможет их увидеть. Например в
/opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/htdocscp -r $ORACLE_HOME/apex/images /opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/htdocs/
2. Конфигурирование mod_pl
Конфигурационный файл mod_pl располагается в директории
/opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/mod_plsql/dads.conf
Он по умолчанию включён в конфигурацию сервера.
Добавляем туда конфиг:
Alias /i/ "/opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/images/"
<Location /pls/apex>
Order deny,allow
PlsqlDocumentPath docs
AllowOverride None
PlsqlDocumentProcedure wwv_flow_file_mgr.process_download
PlsqlDatabaseConnectString localhost:1521:orcl
PlsqlNLSLanguage AMERICAN_AMERICA.AL32UTF8
PlsqlAuthenticationMode Basic
SetHandler pls_handler
PlsqlDocumentTablename wwv_flow_file_objects$
PlsqlDatabaseUsername APEX_PUBLIC_USER
PlsqlDefaultPage apex
PlsqlDatabasePassword PASSWORD
PlsqlRequestValidationFunction wwv_flow_epg_include_modules.authorize
Allow from all
</Location>
/opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/images/ - Директория где хранятся рисунки. На конце должен быть слэш.
PlsqlDatabaseConnectString - строка соединения с БД. Она может быть задана в различных форматах. Не все из них одинаково хорошо работают.
PlsqlNLSLanguage - Языковые настройки БД.
PlsqlDatabasePassword - пароль, заданный APEX_PUBLIC_USER на этапе установки APEX.
3. Рестарт HTTP Server-а
$ export ORACLE_INSTANCE=/opt/oracle/gc_inst/WebTierIH1
$ /opt/oracle/middleware/oms11g/opmn/bin/opmnctl stopproc ias-component=ohs1
$ /opt/oracle/middleware/oms11g/opmn/bin/opmnctl startproc ias-component=ohs1
4. Можно попытаться получить страницу входа в приложение:
http://Host:Port/pls/apex/apex_admin
Здесь хост - имя хоста
Port - порт, на котором слушает Apache. Его можно посмотреть в файле
$ORACLE_INSTANCE/config/OHS/ohs1/httpd.conf
параметр
Listen
У меня это файл /opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/httpd.conf и порт 7788 соответственно.
Troubleshuting
Причину большинства ошибок можно понять, почитав вывод файла
$ORACLE_INSTANCE/diagnostics/logs/OHS/ohs1/ohs1.log
У меня их было две.
1. После попытки получить страницу http://Host:Port/pls/apex/apex_admin в логе появилось сообщение об ошибке:
[2011-11-11T15:25:49.1473+04:00] [OHS] [INCIDENT_ERROR:32] [OHS-9999] [core.c] [host_id: OEM.host.ru] [host_addr: 10.0.0.10] [tid: 1126410560] [user: orcl] [ecid: 004gNF8ScXFFS8G6yzjc6G0007nx00000t] [rid: 0] [VirtualHost: OEM.host.ru:0] File does not exist: /opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/htdocs/favicon.ico
Apache не смог найти иконку сайта. Просто копируем туда любую.
cp /opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/htdocs/images/favicon.ico /opt/oracle/gc_inst/WebTierIH1/config/OHS/ohs1/htdocs/favicon.ico
2. При следующем запросе я получил ещё одну ошибку.
[2011-11-11T15:25:51.2482+04:00] [OHS] [INCIDENT_ERROR:32] [OHS-9999] [mod_context.c] [OEM.host.ru] [host_addr: 10.0.0.10] [tid: 1126410560] [user: orcl] [ecid: 004gNF8^b5_FS8G6yzjc6G0007nx000019] [rid: 0] [VirtualHost: OEM.host.ru:0] MODPLSQL-00054: mod_plsql: HTTP-503 ORA-12154 ORA-12154: TNS:could not resolve the connect identifier
Проблема оказалась в строке подключения
в формате TNSFormat.
Заработало в таком виде:
в формате TNSFormat.
Заработало в таком виде:
PlsqlDatabaseConnectString localhost:1521:orcl
Ссылки:
APEX на otn.oracle.com.
Подписаться на:
Сообщения (Atom)