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

このトピックの表に、一般ユーザ(データ参照者、データ編集者、データ作成者、ArcSDE 管理者)に最低限必要なデータベース権限をまとめます。

1 つめの表は、シングル空間データベース モデル(推奨モデル)のジオデータベースで必要な最小限のユーザ権限を示しています。

2 つめの表は、マルチ空間データベース モデルのジオデータベースで必要な最小限のユーザ権限を示しています。

3 つめの表は、ジオデータベースの作成またはアップグレードで必要な権限を示しています。

さまざまなジオデータベース関連の機能で必要となる追加のオプションの権限が、最後のセクションに示されています。

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

ユーザのデータベース権限の管理には、Management Studio を使用できます。あるいは、Transact SQL ステートメントを使用して、権限の追加と削除を行うこともできます。

メモメモ:

データベースの CONNECT 権限は、デフォルトで PUBLIC に割り当てられます。この権限を PUBLIC から削除する場合は、データベースの CONNECT 権限を明示的に特定のロールやユーザに割り当てる必要があります。

シングル空間データベース モデルの最小権限

ユーザのタイプ

データベースの権限

データセットの権限

注意

データ参照者

SELECT

データベースのすべてのテーブルの読み取りを許可する場合は、ユーザを db_datareader データベース ロールに割り当てることができます。

データ編集者

  • 他ユーザのデータ オブジェクトの SELECT、INSERT、UPDATE、DELETE(他ユーザのデータ オブジェクトを編集する場合)
  • 編集するデータに関連付けられたストアド プロシージャの EXECUTE

データベースのすべてのテーブルの編集を許可する場合は、ユーザを db_datareader ロールと db_datawriter ロールに割り当て、データベース レベルで EXECUTE 権限を付与します。

データ作成者

  • CREATE TABLE
  • CREATE PROCEDURE

データを所有するユーザ アカウントのユーザ名は、ユーザのデフォルト スキーマ名と同じでなければなりません。たとえば、ユーザ名が simon の場合、デフォルト スキーマ名は simon でなければなりません。そうでなければ、ユーザがフィーチャクラスなどのジオデータベース オブジェクトを作成することはできません。

ArcSDE 管理者

ArcSDE 管理者には、ジオデータベースを作成し、データセットをバージョン対応登録するときに、ジオデータベースを処理するのに必要な権限が自動的に付与されます。この権限は削除しないでください。

マルチ空間データベース モデルの最小権限

すべての種類のユーザ(データ参照者、データ編集者、データ作成者、ArcSDE 管理者)を SDE データベースに追加する必要があります。共有ログ ファイルを使用する場合、ユーザには SDE データベースでの CREATE TABLE 権限が必要です。SQL Server 2005 以降のデータベースで共有ログ ファイルを使用している場合は、ユーザを SDE データベースに追加するときにそのユーザのスキーマを作成する必要があります。

SQL Server のシングル空間データベース モデルとマルチ空間データベース モデルの相違点については、「SQL Server のマルチ空間データベース モデル」をご参照ください。

ユーザのタイプ

SDE データベースの権限

SDE データベースのデータセット権限

他のデータベースの権限

他のデータベースのデータセット権限

データ参照者

SELECT

SELECT

データ編集者

関連するストアド プロシージャに対する権限を編集および実行するには、データセットの SELECT、INSERT、UPDATE、DELETE

関連するストアド プロシージャに対する権限を編集および実行するには、データセットの SELECT、INSERT、UPDATE、DELETE

データ作成者

リポジトリ データベースにデータセットを作成する場合は CREATE TABLE と CREATE PROCEDURE(推奨されない)

CREATE TABLE および CREATE PROCEDURE

ArcSDE 管理者

他のデータベースにユーザとして追加しますが、特に必要な権限はありません。

ジオデータベースを作成またはアップグレードする権限

以下の表は、SQL Server でジオデータベースを作成またはアップグレードするときに使用する必要のあるユーザと権限を示しています。

ジオデータベースの種類

ジオデータベースを作成するユーザと権限

ジオデータベースをアップグレードするユーザと権限

シングル空間データベースモデル、sde スキーマ

sde ユーザには以下の権限が必要です。

  • CREATE FUNCTION
  • CREATE PROCEDURE
  • CREATE TABLE
  • CREATE VIEW

sde ユーザを、アップグレードするデータベースの db_owner ロールに追加する必要があります。

別の方法として、db_owner データベース ロールまたは sysadmin 固定サーバ ロールのユーザ(sde 以外)がアップグレードを実行することもできます。

メモメモ:

データベースの名前が sde であれば、それはマルチ空間データベースであると考えられます。したがって、sysadmin ユーザとしてログインし、ジオデータベースをアップグレードする必要があります。

シングル空間データベースモデル、dbo スキーマ

dbo ユーザはすでに、ジオデータベースを作成するのに必要な権限を有しています。

dbo ユーザはすでに、アップグレードするのに必要な権限を有しています。

別の方法として、db_owner データベース ロールのユーザがアップグレードを実行することもできます。

マルチ空間データベースモデル(常に sde スキーマ)

sde ユーザには、sde データベースに対する次の権限が必要です。

  • CREATE FUNCTION
  • CREATE PROCEDURE
  • CREATE TABLE
  • CREATE VIEW

sde ユーザではなく、sysadmin ユーザがジオデータベースをアップグレードする必要があります。sysadmin ユーザは、アップグレードするのに必要な権限を有しています。

追加のオプションの権限

以下の場合は、ジオデータベースに対する追加の権限が必要になります。

関連項目


3/6/2012