データベース サーバー上のジオデータベースおよびデータセットを操作する権限は、定義済みロールにログインとグループを割り当てることによって制御されます。この場合のログインまたはグループは、ユーザーを識別する Windows 認証のログイン アカウントであり、割り当てられたロールによってユーザーが実行できる操作が決まります。
ログインおよびグループに割り当てることができる定義済みのロールと権限は次のとおりです。
- なし − ユーザーにはジオデータベースまたはジオデータベースのデータセットへの特定のアクセス権がありません。
- 読み取り専用 − ユーザーはデータの表示および選択のみを許可されます。
- 読み取り/書き込み − ユーザーはジオデータベース内の新規データセットの読み取り/書き込み、新規データセットの作成、既存のデータセットの読み取り/書き込みを許可されます。
- 管理 − ユーザーは特定のジオデータベースでの管理タスクの実行を許可されます。
- サーバー管理者 − このユーザーがデータベース サーバーを管理します。
権限は累積されます。上位レベルの権限は下位レベルの権限を含むため、データベース サーバー レベルで管理者になると、ジオデータベース管理者にもなります。ジオデータベース管理者であれば、そのジオデータベース内のすべてのデータセットに対する読み取り/書き込み権限が自動的に付与されます。
権限の割り当てが可能な各レベルについて、以下に説明します。
データベース サーバーの権限
データベース サーバー レベルで設定できる唯一の権限は、サーバー管理者です。ユーザーはサーバー管理者かそうでないかのどちらかです。
セットアップ プロセスで、SQL Server Express インスタンスでのジオデータベース格納が有効になり、Windows ログインがデータベース サーバーに追加されます。この時点で、そのログインはサーバー管理者ロールに割り当てられます。割り当て後は、ArcGIS Desktopのデータベース サーバー ショートカット メニューからデータベース サーバー権限の設定画面にアクセスできます。
サーバー管理者は、次のタスクを実行できます。
- データベース サーバーに対するユーザーの追加と削除
- ジオデータベースとユーザー セキュリティの管理
- ジオデータベースの作成と削除
- ジオデータベースのアタッチとデタッチ
- ジオデータベースのバックアップと復元
- ジオデータベースのアップグレード
- ジオデータベースの圧縮
- ジオデータベース内の統計情報とインデックスの更新
- ジオデータベースの縮小
- データベース サーバーの開始、停止、一時停止
データベース サーバー管理者は通常 1 人だけです。
次に、データベース サーバーの [権限] ダイアログ ボックスの例を示します。ログイン「ROCKETJAY\har」はサーバー管理者ロールに追加されています。
ジオデータベースの権限
カタログ ツリーで [Database Servers] ノードを介してジオデータベースにアクセスする場合は、ジオデータベースのショートカット メニューからジオデータベースレベルの権限の管理メニューにアクセスします。
このレベルの権限は、最初にサーバー管理者によって割り当てられ、役割 (ロール) に基づいて管理されます。ユーザーに割り当てることができるロールは、次のとおりです。
- 読み取り専用 - ユーザーはジオデータベース内のすべてのテーブルからの選択を許可されます。
- 読み取り/書き込み - 読み取り/書き込みロールに割り当てられたユーザーは、既存のすべてのデータの選択と編集、およびフィーチャクラスなどのジオデータベース オブジェクトの新規作成を許可されます。ジオデータベース レベルの読み取り/書き込み権限をユーザーに割り当てた場合、そのユーザーのデータセット レベルでの権限を変更することはできません (自動的に「読み取り/書き込み」になります)。
- 管理 - 管理ロールに割り当てられたユーザーは、そのジオデータベース上でのみ管理者になります。つまり、ジオデータベース内のすべてのデータセットに対して読み取り/書き込みの権限を持つことになります。この権限をデータセット レベルで削除することはできません。たとえば、データセット レベルで [権限] ダイアログ ボックスを開き、そのデータセットに対するユーザーの権限として [読み取り専用] を選択することはできません。
ジオデータベースのデータセットに対する読み取り/書き込みの接続に加えて、ジオデータベース管理者はそのジオデータベースで管理タスクを実行することができます。これには、ジオデータベースのバックアップの作成、ジオデータベースの圧縮、アップグレード、他のユーザーの権限の管理が含まれます(権限を管理するユーザーはデータベース サーバーの既存ユーザーでなければなりません。ジオデータベース管理者がデータベース サーバーにユーザーを追加することはできません)。
- ユーザー ロールのもう 1 つのオプションは [なし] です。この場合、ユーザーはジオデータベース レベルの権限を持ちませんが、以下の「データセット権限」のセクションで説明するように、特定のデータセットに対する読み取り専用または読み取り/書き込みの権限を割り当てることが可能です。[なし] は、ユーザーをデータベース サーバーに追加するときにデフォルトで割り当てられるジオデータベース レベルの権限です。
次に、ジオデータベース レベルの [権限] ダイアログ ボックスを示します。ログイン ROCKETAY\pllama が、ジオデータベース historical の読み取り/書き込みロールに追加されています。
サーバー管理者とジオデータベース管理者の詳細については、「データベース サーバー管理者」をご参照ください。
データセットの権限
データセットの権限は、データセットのショートカットメニューに表示される [権限] コマンドからアクセスできます。このコマンドにより [権限] ダイアログ ボックスが表示されます。[権限] ダイアログ ボックスから設定できるデータセット レベルの権限は、[読み取り専用]、[読み取り/書き込み]、[なし] の 3 つです。
ジオデータベース レベルの権限を割り当てずに ([なし])、ジオデータベースの特定のフィーチャ データセットに対する読み取り専用または読み取り/書き込みの権限を割り当てることができます。たとえば、解析グループのユーザーにジオデータベースへの読み取り専用の権限を割り当てると同時に、ジオデータベースのある特定のフィーチャクラスに対する読み取り/書き込みの権限を割り当てることができます。
ユーザーがテーブルなどのデータセットを作成すると、そのデータセットはそのユーザーによって所有され、そのユーザーのスキーマの一部と見なされます。ジオデータベース内のデータセットのユーザー権限を設定できるのは、そのデータセットの所有者だけです。
サーバー管理者の場合、作成したデータセットは dbo によって所有され、dbo のスキーマに格納されます。したがって、サーバー管理者は、dbo スキーマのすべてのデータセットの権限を割り当てることができますが、dbo スキーマ以外のオブジェクトに関しては権限を割り当てることができません。つまり、サーバー管理者は、非管理者ユーザーが所有するデータへの権限を割り当てることはできません。
次に、「firestations (消防署) 」という名前のデータセットの、データセットの [権限] ダイアログ ボックスの例を示します。
これらのロールにユーザーを割り当て、権限を付与または取り消す方法については、「権限の変更」をご参照ください。