4.4.4 オンプレミス・データベースに必要な権限のユーザーへの付与

オンプレミス・データベースでのOML4Pyの使用に必要な権限を付与する手順です。

OML4Py (OML4Py)を使用するには、特定のデータベース権限が必要です。OML4Pyスクリプト・リポジトリでユーザー定義Python関数を格納および管理するには、PYQADMINデータベース・ロールも必要です。

ユーザー権限

オンプレミスOracleデータベース・サーバーにOML4Pyサーバーをインストールした後で、次の権限を任意のOML4Pyユーザーに付与します。

  • CREATE SESSION
  • CREATE TABLE
  • CREATE VIEW
  • CREATE PROCEDURE
  • CREATE MINING MODEL
  • EXECUTE ON CTXSYS.CTX_DDL (oml.algoパッケージのアルゴリズム・クラスでOracle Text処理機能を使用するために必要)

これらすべての権限を付与するには、オンプレミスOracleデータベース・サーバーでデータベース管理者としてSQLを起動し、次のSQL文を実行します(oml_userOML4Pyユーザーです)。

GRANT CREATE SESSION, CREATE TABLE, CREATE VIEW, CREATE PROCEDURE, 
CREATE MINING MODEL, EXECUTE ON CTXSYS.CTX_DDL to oml_user;

スクリプト・リポジトリおよびデータストアの管理

OML4Pyスクリプト・リポジトリには、ユーザーがEmbedded Python Execution関数で呼び出すことができるユーザー定義Python関数が格納されます。OML4Pyデータストアには、後続のPythonセッションで使用できるPythonオブジェクトが格納されます。スクリプト・リポジトリまたはデータストア内のユーザー定義Python関数は、任意のユーザーが使用できるか、所有者のみまたはアクセス権を付与されたユーザーによる使用に制限できます。

OML4Pyサーバー・インストール・スクリプトにより、PYQADMINロールがデータベースに作成されます。このロールは、次の操作を実行するために必要です。

  • スクリプト・リポジトリにユーザー定義Python関数を格納します。
  • リポジトリからユーザー定義Python関数を削除します
  • スクリプト・リポジトリ内のユーザー定義Python関数を使用する権限を付与または取り消します。
  • データストア内のオブジェクトを使用する権限を付与または取り消します。

このロールをユーザーに付与するには、オンプレミスOracleデータベース・サーバーでデータベース管理者としてSQLを起動し、次のSQL文を実行します(oml_userOML4Pyユーザーです)。

GRANT PYQADMIN to oml_user;