Oracle でのジオデータベースに対するユーザ権限

Oracle データベースで実行する必要のある操作内容に基づいて、ユーザに特定の権限を割り当てる必要があります。一部の権限はロールに割り当てることができますが、その他の権限はユーザに直接割り当てる必要があります。

このトピックの最初のセクションでは、すべてのユーザに必要なパッケージの権限について説明します。この権限は、ジオデータベースの作成とアップグレードのために public ロールに付与する必要があります。ただし、この権限をジオデータベースの作成またはアップグレード後にすべての個別ユーザに付与することで public ロールから取り消すことができます。

2 つめのセクションでは、共通タイプのユーザ(データ参照者、データ編集者、データ作成者、ジオデータベース管理者)に最小限必要なデータベース権限について説明します。これらの権限は、最初のセクションに示した権限に追加で必要なものです。

3 つめのセクションは、ジオデータベースの作成またはアップグレードのためにジオデータベース管理者が必要とする権限を示しています。これらの権限も、最初のセクションに示した権限に追加で必要なものです。

最後のセクションは、Oracle のジオデータベースのユーザに一般的に割り当てられるオプションの権限を示しています。

ユーザ権限の管理には、Oracle の Enterprise Manager を使用できます。または、SQL ステートメントを使用して権限の追加と削除を行うこともできます。

パッケージの権限

次のパッケージには実行権限が必要です。

ジオデータベースを作成したりアップグレードするには、これらのパッケージに対する実行権限を public ロールに付与する必要があります。

GRANT EXECUTE ON dbms_pipe TO public;
GRANT EXECUTE ON dbms_lock TO public;
GRANT EXECUTE ON dbms_lob TO public;
GRANT EXECUTE ON dbms_utility TO public;
GRANT EXECUTE ON dbms_sql TO public;
GRANT EXECUTE ON utl_raw TO public;

ヒントヒント:

Oracle では、dbms_utility、dbms_sql、utl_raw に対する実行権限がデフォルトで public ロールに付与されます。したがって、これらを public から明示的に削除する場合のみ、これらのパッケージの実行権限を付与する必要があります。

ジオデータベースの作成またはアップグレードが完了したら、public ロールから権限を削除し、ジオデータベースにログインする個々のユーザ(ジオデータベース管理者を含む)に権限を付与することで、これらのパッケージに対する権限を制限することができます。

注意注意:

ユーザ ロールを介して割り当てられた権限は Oracle パッケージの実行時には適用されないので、実行権限をロールに割り当ててから、そのロールをすべてのユーザに割り当てることで実行権限を付与することはできません。

実行権限を個々のユーザに付与したら、sde スキーマを再コンパイルします。

EXEC dbms_utility.compile_schema( 'SDE' );

最小限の権限

前のセクションで説明した権限以外に、次に示す種類のユーザには以下の権限が必要です。

ユーザのタイプ

データベースの権限

データセットの権限

注意

データ参照者

  • CREATE SESSION

データベース オブジェクトの SELECT

共有 ArcSDE ログ ファイル テーブルを使用するようにデータベースが設定されている場合(デフォルト)、次の権限が必要になります。詳細については、「Oracle 用 ArcSDE ログ ファイル テーブル設定オプション」をご参照ください。

データ編集者

  • CREATE SESSION

他のユーザのデータセットの SELECT、INSERT、UPDATE、DELETE

ジオデータベースが共有 ArcSDE ログ ファイル テーブルを使用する場合(デフォルト)、追加の権限が必要になる場合があります。詳細については、「Oracle 用 ArcSDE ログ ファイル テーブル設定オプション」をご参照ください。

ユーザがバージョン対応ビューを介してバージョン対応登録されたデータを編集する場合、ユーザには、バージョン対応ビューに対する SELECT、INSERT、UPDATE、DELETE の各権限も付与されている必要があります。ArcGIS の [権限] ダイアログ ボックスを使用して、バージョン対応登録されたフィーチャクラスに対する SELECT、INSERT、UPDATE、DELETE の各権限を付与すると、それらの権限は関連するバージョン対応ビューに対して自動的に付与されます。

データ作成者

  • CREATE SESSION
  • CREATE SEQUENCE
  • CREATE TRIGGER
  • CREATE VIEW
  • CREATE TABLE

ジオデータベース管理者

  • CREATE SESSION
  • CREATE SEQUENCE
  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE PROCEDURE
Oracle での最小権限
注意注意:

Oracle 10g リリース 2 から、セキュリティ強化のために ORACLE_HOME へのアクセス制限が強化されました。ジオデータベース管理者が上位の権限の付与を必要とせずに ORACLE_HOME のファイルにアクセスできるように、オペレーティング システムの SDE アカウントで、互換性のある Oracle クライアントをインストールします。UNIX または Linux では、SDE ユーザのシェルでクライアントの ORACLE_HOME を設定します。詳細については、「Knowledge Base 34824」をご参照ください。

ジオデータベースの作成またはアップグレードに必要な権限

次の表は、ArcSDE ジオデータベースを作成またはアップグレードするためにジオデータベース管理者に割り当てる必要のある権限を示しています。その権限または権限のグループが必要な理由も示してあります。以下の表の「目的」列、および前述のジオデータベース管理者に最低限必要な権限の表でも説明していますが、これらの権限の一部は作成またはアップグレードが完了した後に削除することができます。

最初の表は、SDE ユーザが SDE ユーザ スキーマ内にジオデータベースを作成するために必要な権限を示しています。これは、SDE マスタ ジオデータベースと呼ばれます。

2 番目の表は、SDE ユーザが SDE マスタ ジオデータベースをアップグレードするのに必要な権限を示しています。

3 番目の表は、SDE 以外のユーザが自身のスキーマ内にジオデータベースを作成するのに必要な権限を示しています。これらのジオデータベースは、ユーザ スキーマ ジオデータベースと呼ばれます。

4 番目の表は、SDE 以外のユーザがユーザ スキーマ ジオデータベースをアップグレードするのに必要な権限を示しています。

権限は、ジオデータベースの作成およびアップグレードにおける目的ごとにグループ化されています。

権限

目的

  • CREATE SESSION

Oracle に接続します。

  • CREATE TABLE
  • CREATE TRIGGER

ジオデータベース レポジトリの作成。

  • CREATE SEQUENCE

ID を生成するためのシーケンスを作成します。この権限は、ジオデータベースの作成後に削除できます。

  • CREATE PROCEDURE

ジオデータベース システム テーブル のコンテンツを維持するためのパッケージを作成します。

  • EXECUTE ON DBMS_CRYPTO

ST_Geometry タイプのマップ メンバ関数を作成できます。この関数は、空間ユニオンまたは交差が実行されるたびに呼び出されます。

  • CREATE INDEX TYPE
  • CREATE LIBRARY
  • CREATE OPERATOR
  • CREATE PUBLIC SYNONYM
  • CREATE TYPE
  • CREATE VIEW
  • DROP PUBLIC SYNONYM

ST_Geometry および ST_Raster ユーザ定義データ タイプ、およびクエリ最適化に使用するタイプを作成します。システム ビュー GDB_Items_vw および GDB_ItemRelationships_vw を作成するには、CREATE VIEW が必要です。これらの権限は、ジオデータベースの作成後に削除できます。

  • ADMINISTER DATABASE TRIGGER

ST_Geometry を含むテーブルを SQL を使用して削除、変更、名前変更した場合に、ST_GEOMETRY_COLUMNS および ST_GEOMETRY_INDEX テーブルを変更するために必要なデータベース イベント トリガを作成できるようにします。この権限は、ジオデータベースの作成後に削除できます。

SDE マスタ ジオデータベースを作成するための Oracle SDE ユーザ権限

権限

目的

  • CREATE SESSION

Oracle に接続します。

  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW

ジオデータベース リポジトリをアップグレードします。CREATE VIEW 権限は、アップグレード後に削除できます。

  • CREATE PROCEDURE

ジオデータベース システム テーブル のコンテンツを維持するためのパッケージをアップグレードします。

  • CREATE SEQUENCE

ID を生成するためのシーケンスを更新します。この権限は、アップグレード後に削除できます。

  • EXECUTE ON DBMS_CRYPTO

ST_Geometry タイプのマップ メンバ関数を更新します。この関数は、空間的な結合または交差が実行されるたびに呼び出されます。

  • CREATE INDEXTYPE
  • CREATE LIBRARY
  • CREATE OPERATOR
  • CREATE PUBLIC SYNONYM
  • CREATE TYPE
  • DROP PUBLIC SYNONYM

ST_Geometry および ST_Raster ユーザ定義データ タイプ、およびクエリ最適化に使用するタイプを更新します。これらの権限は、アップグレード後に削除できます。

  • ALTER ANY INDEX
  • CREATE ANY INDEX
  • CREATE ANY TRIGGER
  • CREATE ANY VIEW
  • DROP ANY INDEX
  • DROP ANY VIEW
  • SELECT ANY TABLE

ジオデータベース コンテンツをアップグレードします。

  • ADMINISTER DATABASE TRIGGER

ST_Geometry を含むテーブルを SQL を使用して削除、変更、名前変更した場合に、ST_GEOMETRY_COLUMNS および ST_GEOMETRY_INDEX テーブルを変更するために必要なデータベース イベント トリガを作成できるようにします。この権限は、アップグレード後に削除できます。

SDE マスタ ジオデータベースをアップグレードするための Oracle SDE ユーザ権限

権限

目的

  • CREATE SESSION

Oracle に接続します。

  • CREATE TABLE
  • CREATE TRIGGER
  • CREATE VIEW

ジオデータベース レポジトリの作成。

  • CREATE SEQUENCE

ID を生成するためのシーケンスを作成します。この権限は、ジオデータベースの作成後に削除できます。

  • CREATE PROCEDURE

ジオデータベース システム テーブル のコンテンツを維持するためのパッケージを作成します。

  • CREATE TYPE

クエリ最適化に使用するタイプを作成します。

ユーザ スキーマ ジオデータベースを作成するための Oracle 権限

権限

目的

  • CREATE SESSION

Oracle に接続します。

  • CREATE TABLE

ジオデータベース リポジトリをアップグレードします。

  • CREATE SEQUENCE

ID を生成するためのシーケンスを更新します。この権限は、アップグレード後に削除できます。

  • ALTER ANY INDEX
  • CREATE ANY INDEX
  • CREATE ANY TRIGGER
  • CREATE ANY VIEW
  • DROP ANY INDEX
  • DROP ANY VIEW
  • SELECT ANY TABLE
  • CREATE PROCEDURE
  • CREATE TYPE

ジオデータベース コンテンツをアップグレードします。

ユーザ スキーマ ジオデータベースをアップグレードするための Oracle 権限

一般的なオプションの権限

多くの組織が、ジオデータベースの機能をさらに強化するために、Oracle の追加機能を利用しています。ジオデータベース管理者用の一般的なオプションの権限と権限の目的を、次の表に示します。権限は、目的別に分類してあります。

権限

目的

  • ALTER SESSION
  • PLUSTRACE

SQL をトレースする SQL*Plus の AUTOTRACE 機能を有効にし、パフォーマンス チューニングやトラブルシューティングのためにセッション固有の初期化パラメータを変更できるようにします。PLUSTRACE ロールは、ORACLE_HOME/sqlplus/admin/plustrce.sql を実行して作成します。

  • ADVISOR(Oracle 10g のみ)
  • ALTER ANY INDEX
  • ANALYZE ANY
  • SELECT ANY DICTIONARY
  • CREATE JOB(Oracle 10g のみ)

ジオデータベース管理者に割り当てて、Oracle の監視と基本的な管理タスクを実行できるようにします。

これは、ジオデータベース管理者が Oracle DBA ではない組織で便利です。

  • CREATE DATABASE LINK
  • CREATE MATERIALIZED VIEW
  • CREATE VIEW

これは、ジオデータベースをエンタープライズの他の非空間データベースと統合する際に役立ちます。

  • RESTRICTED SESSION

データベースがオンラインだがエンド ユーザはアクセスできない状態で、ジオデータベース管理者が管理を実行できます。

  • UNLIMITED TABLESPACE

この権限をインストールおよびアップグレードを行うジオデータベース管理者に付与すると、データベースのジオデータベース管理者の表領域に、インストールまたはアップグレードを完了するための十分な格納領域があることが保証されます。領域の管理のために割り当て制限を設定している場合、この権限はジオデータベースのインストールまたはアップグレード後に削除できます。割り当て制限の詳細については、「Oracle でのメモリのチューニング」をご参照ください。

  • ALTER SYSTEM
  • SELECT_CATALOG_ROLE

ジオデータベースから接続を削除するには、SDE ユーザにこれらの権限が必要です。[エンタープライズ ジオデータベースの作成(Create Enterprise Geodatabase)] ジオプロセシング ツールは、これらの権限を SDE ユーザに付与します。このツールを実行した後に、SDE ユーザからこれらの権限を取り消すことができますが、そうすると、SDE ユーザはデータベースからユーザを切断することができなくなります。

または、SDE ユーザを DBA ロールに追加して、ユーザをデータベースから切断することができるようにすることも可能です。

Oracle のオプションの権限

データセットの権限は、ArcGIS for Desktop で使用可能な [権限] ダイアログ ボックスまたは [権限の変更(Change Privileges)] ジオプロセシング ツールを使用して、データセットの所有者が付与または取り消しを行います。手順については、「データセットの権限の設定」および「権限の変更(Change Privileges)」をご参照ください。

関連トピック

9/14/2013