SQL Server でのジオデータベースに対するユーザ権限
このトピックの表に、一般ユーザ(データ参照者、データ編集者、データ作成者、ジオデータベース管理者)に最低限必要なデータベース権限をまとめます。
1 つめの表には、ユーザの種類ごとに必要な最小限のユーザ権限を示します。
2 つめの表には、ジオデータベースの作成またはアップグレードで必要な権限を示します。
さまざまなジオデータベース関連の機能で必要となる追加のオプションの権限は、最後のセクションに示しています。
ユーザのデータベース権限の管理には、Management Studio を使用できます。あるいは、Transact SQL ステートメントを使用して、権限の追加と削除を行うこともできます。
データセットの権限は、ArcGIS for Desktop で使用可能な [権限] ダイアログ ボックスまたは [権限の変更(Change Privileges)] ジオプロセシング ツールを使用して、データセットの所有者が付与または取り消しを行います。手順については、「データセットの権限の設定」および「権限の変更(Change Privileges)」をご参照ください。
データベースの CONNECT 権限は、デフォルトでパブリック データベース ロールに割り当てられます。この権限をパブリックから削除する場合は、データベースの CONNECT 権限を明示的に特定のロールやユーザに割り当てる必要があります。
最小限の権限
ユーザの種類 |
データベースの権限 |
データセットの権限 |
注意事項 |
---|---|---|---|
データ参照者 |
SELECT |
データベースのすべてのテーブルの読み取りを許可する場合は、ユーザを db_datareader データベース ロールに割り当てることができます。それ以外の場合は、SELECT を特定のテーブルおよびビューに付与します。 |
|
データ編集者 |
|
データベースのすべてのテーブルの編集を許可する場合は、ユーザを db_datareader ロールと db_datawriter ロールに割り当て、データベース レベルで EXECUTE 権限を付与します。 |
|
データ作成者 |
|
データを所有するデータベース ユーザのユーザ名は、ユーザのデフォルト スキーマ名と同じでなければなりません。たとえば、ユーザ名が simon の場合、デフォルト スキーマ名は simon でなければなりません。そうでなければ、ユーザがフィーチャクラスなどのジオデータベース オブジェクトを作成することはできません。 |
|
ジオデータベース管理者 |
ジオデータベース管理者が sde という名前のユーザで、このユーザがジオデータベースにシステム オブジェクト以外のデータを所有しない場合、ジオデータベースの作成後の sde ユーザは、ジオデータベースに接続できるだけでかまいません。ただし、ジオデータベースをアップグレードする必要がある場合や、sde ユーザが接続を切断したりすべてのデータベース ユーザを表示したりする必要がある場合は、追加の権限が必要です。 |
バージョン対応データセットの SELECT、INSERT、UPDATE、DELETE |
ジオデータベースを作成またはアップグレードするための権限
以下の表は、SQL Server でジオデータベースを作成またはアップグレードするときに使用する必要のあるユーザと権限を示しています。
ジオデータベースの種類 |
ジオデータベースを作成するユーザと権限 |
ジオデータベースをアップグレードするユーザと権限 |
---|---|---|
sde スキーマ ジオデータベース |
sde ユーザには以下の権限が必要です。
|
sde ユーザを、アップグレードするデータベースの db_owner ロールに追加する必要があります。 別の方法として、db_owner データベース ロールまたは sysadmin 固定サーバ ロールのユーザ(sde 以外)がアップグレードを実行することもできます。 注意: 10.1 より前に作成された sde という名前のジオデータベースは、マルチ空間データベースとみなされます。したがって、sysadmin ユーザとしてログインし、ジオデータベースをアップグレードする必要があります。 |
dbo スキーマ |
dbo ユーザはすでに、データベース内にジオデータベースを作成するのに必要な権限を有しています。 |
dbo ユーザはすでに、アップグレードするのに必要な権限を有しています。 別の方法として、db_owner データベース ロールのユーザがアップグレードを実行することもできます。 |
マルチ空間データベースモデル(常に sde スキーマ) |
なし。ArcGIS 10.1 から、マルチ空間データベース ジオデータベースは作成できなくなりました。 |
sysadmin 固定サーバ ロールのメンバーである(sde 以外の)ユーザが、ジオデータベースをアップグレードする必要があります。sysadmin ユーザは、アップグレードするのに必要な権限を有しています。 |
追加の権限
以下の場合は、ジオデータベースに対する追加の権限が必要になります。
- ジオデータベース接続を削除するには、sde スキーマ ジオデータベースのジオデータベース管理者(sde ユーザ)を processadmin 固定サーバ ロールに追加し、VIEW DEFINITION 権限を付与する必要があります。[エンタープライズ ジオデータベースの作成(Create Enterprise Geodatabase)] ジオプロセシング ツールは、このロールと権限を sde ユーザに付与します。ジオデータベースを作成した後に、この権限を取り消し、processadmin ロールからユーザを削除することができますが、そうすると、sde ユーザはジオデータベースからユーザを切り離すことができなくなります。
- データの作成者がデータベースの既存のユーザとロールを確認できるようにしたい場合は、VIEW DEFINITION 権限を付与する必要があります([データベース ユーザの作成(Create Database User)] ジオプロセシング ツールを使用して作成したユーザにはこの権限が自動的に付与されます)。
- XML 列を所有するユーザには、XML 列をインデックス化するときに使用されるフルテキスト カタログに対する REFERENCES 権限を付与する必要があります。
- ArcSDE API を使用してデータベースに XML スキーマを作成するユーザには、CREATE XML SCHEMA COLLECTION 権限を付与する必要があります。
- ジオデータベース内の共有ログ ファイル テーブルを使用するようにジオデータベースの設定を変更する場合は、すべてのユーザがデータベースの CREATE TABLE 権限を持つ必要があります。