Oracle でのジオデータベースに対するユーザ権限
Oracle データベースで実行する必要のある操作内容に基づいて、ユーザに特定の権限を割り当てる必要があります。一部の権限はロールに割り当てることができますが、その他はユーザに直接割り当てる必要があります。
このトピックの最初のセクションでは、すべてのユーザに必要なパッケージの権限について説明します。この権限は、ジオデータベースの作成とアップグレードのために public ロールに付与する必要があります。ただし、この権限を public ロールから取り消す場合は、ジオデータベースの作成またはアップグレード後にすべての個別ユーザに付与することができます。
2 つめのセクションでは、共通タイプのユーザ(データ参照者、データ編集者、データ作成者、ArcSDE 管理者)に最小限必要なデータベース権限について説明します。これらの権限は、最初のセクションに示した権限に追加で必要なものです。
3 つめのセクションは、ジオデータベースの作成またはアップグレードのために ArcSDE 管理者が必要とする権限を示しています。これらの権限も、最初のセクションに示した権限に追加で必要なものです。
最後のセクションは、ArcSDE for Oracle ユーザに一般的に割り当てられるオプションの権限を示しています。
ユーザ権限の管理には、Oracle の Enterprise Manager を使用できます。あるいは、SQL ステートメントを使用して、権限の追加と削除を行うこともできます。
パッケージの権限
次のパッケージには実行権限が必要です。
- dbms_lob
- dbms_lock
- dbms_pipe
- dbms_utility
- dbms_sql
- utl_raw
ジオデータベースを作成したりアップグレードするには、これらのパッケージに対する実行権限を 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 では、public ロールにデフォルトで dbms_lob、dbms_utility、dbms_sql、utl_raw の実行権限が付与されます。したがって、これらを public から明示的に削除する場合のみ、これらのパッケージに対する実行を許可する必要があります。
ジオデータベースの作成またはアップグレードが完了したら、public ロールから権限を削除し、ジオデータベースにログインする個々のユーザ(ArcSDE 管理者を含む)に権限を付与することで、これらのパッケージに対する権限を制限することができます。
ユーザ ロールを介して割り当てられた権限は Oracle パッケージの実行時には適用されないので、実行権限をロールに割り当ててから、そのロールをすべてのユーザに割り当てることはできません。
最小限の権限
前のセクションで説明した権限以外に、次に示す種類のユーザには以下の権限が必要です。
ユーザのタイプ |
データベース権限 |
データセット権限 |
注意 |
---|---|---|---|
データ参照者 |
|
データベース オブジェクトの SELECT |
データベースが共有 ArcSDE ログ ファイル(デフォルト)を使用するように設定されている場合は、追加の権限が必要になります。詳細については、「Oracle 用ログ ファイル テーブル設定オプション」をご参照ください。 |
データ編集者 |
|
他ユーザのデータセットの SELECT、INSERT、UPDATE、DELETE |
データベースが共有 ArcSDE ログ ファイル(デフォルト)を使用するように設定されている場合は、追加の権限が必要になります。詳細については、「Oracle 用ログ ファイル テーブル設定オプション」をご参照ください。 |
データ作成者 |
|
ユーザがデータベース ビュー、空間ビュー、またはマルチバージョン対応のビューを作成する場合は、CREATE VIEW 権限のみが必要です。 |
|
ArcSDE 管理者 |
|
SELECT ANY TABLE 権限は、Oracle Spatial への自動登録を使用する場合のみ必要です。自動登録を使用しない場合、SELECT ANY TABLE 権限は必要ありません。 |
Oracle 10g リリース 2 から、セキュリティ強化のために ORACLE_HOME へのアクセス制限が強化されました。ArcSDE 管理者に上位の権限を付与せずに、ArcSDE 管理者が ORACLE_HOME 内のファイルにアクセスできるようにするには、オペレーティング システムの SDE アカウント下に互換性のある Oracle クライアントをインストールします。UNIX または Linux では、SDE ユーザのシェルでクライアントの ORACLE_HOME を設定します。詳細については、Knowledge Base 34824 をご参照ください。
ジオデータベースの作成またはアップグレードに必要な権限
次の表は、ArcSDE ジオデータベースを作成またはアップグレードするために ArcSDE 管理者に割り当てる必要のある権限を示しています。その権限または権限のグループが必要な理由も示してあります。[目的] フィールドの注意事項や、前述の表の ArcSDE 管理者の最小権限に示したように、これらの権限の一部は作成またはアップグレードの完了後に削除することができます。
Oracle のユーザ スキーマに作成されたジオデータベースを使用する場合、そのジオデータベースの存在するスキーマの所有者がジオデータベースを作成またはアップグレードするために必要なものと同じ権限が必要です。
権限は、ジオデータベースの作成およびアップグレード時に果たされる目的ごとにグループ化されます。
権限 |
目的 |
---|---|
|
Oracle への接続。 |
|
ArcSDE リポジトリの作成とアップグレード。 |
|
ジオデータベースの作成時にシーケンスを作成する。 |
|
ArcSDE リポジトリ テーブルのコンテンツを維持するために、パッケージを作成してアップグレードする。 |
|
ST_Geometry および ST_Raster ユーザ定義データ タイプを作成する。ArcSDE をアップグレードするには、CREATE OPERATOR と CREATE INDEXTYPE も必要です。これらの権限はインストールまたはアップグレード後に削除可能です。システム ビュー GDB_Items_vw および GDB_ItemRelationships_vw を作成するには、CREATE VIEW が必要です。 |
|
ジオデータベース コンテンツをアップグレードします。 |
|
SQL を使用して ST_Geometry を含むテーブルの削除、変更、または名前の変更を行う場合に、ST_GEOMETRY_COLUMNS テーブルと ST_GEOMETRY_INDEX テーブルの変更に必要なデータベース イベント トリガを作成できるようにします。この権限は、インストールまたはアップグレード後に削除できます。 |
ArcSDE for Oracle に付属して SDEHOME → tools → oracle にインストールされるスクリプト(createsdeoracle.sql)があります。このスクリプトを変更して使用することで、sde 表領域および sde ユーザを作成し、その sde ユーザに、ジオデータベースを作成またはアップグレードするための権限を割り当てることができます。
一般的なオプションの権限
多くの組織が、ジオデータベースの機能をさらに強化するために、Oracle の追加機能を利用しています。ArcSDE 管理者用の一般的なオプションの権限と権限の目的を、次の表に示します。権限は、目的別に分類してあります。
権限 |
目的 |
---|---|
|
SQL をトレースする SQL*Plus の AUTOTRACE 機能を有効にし、パフォーマンス チューニングやトラブルシューティングのためにセッション固有の初期化パラメータを変更できるようにします。PLUSTRACE ロールは、ORACLE_HOME/sqlplus/admin/plustrce.sql を実行して作成します。 |
|
ArcSDE 管理者ユーザに割り当てて、Oracle の監視と基本的な管理タスクを実行できるようにします。 ArcSDE 管理者が Oracle DBA ではない組織で便利です。 |
|
ジオデータベースをエンタープライズの他の非空間データベースと統合する際に役立ちます。 |
|
データベースはオンラインですがエンド ユーザはアクセスできない状態で、ArcSDE 管理者ユーザが管理を実行できます。 |
|
この権限をインストールおよびアップグレードを行う ArcSDE 管理者に付与すると、データベースの ArcSDE 管理者の表領域に、インストールまたはアップグレードを完了するための十分な格納領域があることが保証されます。領域の管理のために割り当て制限を設定している場合、この権限は ArcSDE のインストールまたはアップグレード後に削除できます。 注意: 割り当て制限は、UNLIMITED TABLESPACE システム権限を許可する前に指定する必要があります。そうしないと、Oracle Enterprise Manager Console で事後に割り当て制限を変更することができなくなります。 |
|
sdemon コマンドを使用してジオデータベースへのダイレクト コネクションを切断するには、sde ユーザにこれらの権限が必要です。 または、sde ユーザを DBA ロールに追加して、ダイレクト コネクションを切断することもできます。 |
データセットの権限は、ArcGIS Desktop で使用可能な [権限の変更(Change Privileges)] ジオプロセシング ツールを使用して、データセットの所有者が付与または取り消しを行います。手順については、「データセットの権限の設定」および「権限の変更(Change Privileges)」をご参照ください。