Oracle Enterprise Manager がOS資格証明に失敗する
このトラブルになるほとんどの方は
- 「バッチジョブとしてログイン」の権利設定ができてない。
- ActiveDirectory ドメイン環境とワークグループの違いによるユーザ名の設定ミス。
などが原因で、資格証明に失敗している場合だと思います。
そうではない場合に遭遇したので報告いたします。今回の症状はuniPaaS RichClient Serverを使用した場合に発生するレアなケースです。
【環境】
- サーバ: Windows2008 R2 X64 サーバ
- Unipaas: uniPaas RichClient Server V1Plus
- データベース:Oracle 11gR2 x64
- 同サーバ上に Oracle Client x32 もインストールしている。
【症状】
サーバ上で、UniPaas Brokerが起動するUniRTE.exeが、ORACLE11gR2のOEM(Oracle Enterprise Manager)の資格証明を阻害する。この結果OEMを使ってのORACLEの設定作業のうち、OSに対する資格証明が必要なものはすべて操作できなくなる。
資格証明のエラー有無は以下のメニューより確認している。
OEM-[プリファレンス]-[優先資格証明]-[データベースインスタンス アイコン]-[テストボタン]
【発生する条件】
Mgbi.iniの[APPLICATIONS_LIST]設定で、下記のように実行ユーザとパスワードを指定すると発生する。
RCHELLO = uniRTE.exe @rchello.ini,D:\unipaasv1p\RCHELLO,administrator,password,1,1
ここで設定するユーザを他のユーザに変えても問題は発生する。
起動する自作のUniPaaSアプリケーションは超簡単なものでも問題が発生することを確認している。
なお、下記のようにユーザ名・パスワードを指定しなければ問題は発生しない。
RCHELLO = uniRTE.exe @rchello.ini,D:\unipaasv1p\RCHELLO,,,1,1
※ユーザの指定がない場合はUniRTE.exeはSystemユーザで実行されている
【解決方法】
サービスとして起動しているUniPaas Brokerをsystemユーザではなく目的のユーザで起動するよにサービスのプロパティを設定する。
[APPLICATIONS_LIST]の行ではユーザ名、パスワードを指定しない。