Vistaでsqlplusに失敗2008年06月23日 17時53分

社内ユーザPCにどこかのベンダーが某生産管理ソフトをインストールしにきた。インストールするのに管理者権限が必要とのことなので、一時的にAdministratorでログオンし作業をさせ、自分は別の仕事をしていた。

数時間してもうとっくに終わっているだろうと思ったが、どうやらトラブルがありまだ終わっていないらしい。聞いてみると、この生産管理ソフトはデータベースにoracleを使用しているのだが、Winodws Vistaで管理者権限のない一般ユーザでログインした際、oracle clientが起動しないという。そういってコマンドプロンプトから「sqlplus」と入力して、エラーが出る状況を教えてくれた。エラーの内容は

SP2-1503:Oracle Call Interfaceを初期化できません

SP2-0152:Oracleが正常に機能していない可能性があります。

という感じ。ちなみにXPなら問題ないらしい。とりあえず関連するフォルダの一般ユーザのアクセス権を緩めてみたりしたが状況変わらず。ベンダーの人はしばらく粘っていたが、oracleのバグでそのうちパッチが出るだろうということで、再調査すると言い帰っていった。

さて、自分も一応調べてみるか。といってもoracleはほとんど扱ったことがないためネットに頼るしかないが。エラーの番号などを入力して検索してみると、意外とあっさりそれらしい事例が見つかった。どうやら「セキュリティポリシー」が起因しているらしい。「gpedit.msc」を起動し(管理ツールの「ローカルセキュリティポリシー」でも同じか?)「コンピュータの構成」→「Windowsの設定」→「セキュリティの設定」→「ローカルポリシー」→「ユーザー権利の割り当て」から「グローバルオブジェクトの作成」を選択。ここに「Authenticated Users (もちろんEveryoneでもできる)」を追加する。複数PCに設定するならグループポリシーを使えば楽かも。

再び一般ユーザでログオンしコマンドプロンプトから「sqlplus」を実行するとエラーは出ず、ユーザ名を入力するプロンプトがでた。

しかし最近管理者権限で引っかかることが多いなぁ。普通の企業はみんなユーザに管理者権限を与えてPCを使っているのかな?