演習 4: ユーザの追加と権限の管理
このトピックは、ArcGIS for Desktop Standard および ArcGIS for Desktop Advanced にのみ該当します。
これまでのチュートリアルで使用したログインは、このチュートリアルの事前準備の際に、データベース サーバに追加されています。
データベース サーバに他のユーザがアクセスする必要のある場合、対象のユーザをデータベース サーバに追加する必要があります。ユーザの追加を行うには、あらかじめコンピュータまたはネットワーク上に Windows ログインが存在している必要があります。そのため、この演習では最初にログインをコンピュータに追加してから、データベース サーバに追加します。
「データベース サーバ チュートリアルの概要」で説明したように、コンピュータ上での管理権限を持っていない場合は、システム管理者にユーザの作成を代行してもらう必要があります。
コンピュータへのログインの追加
Windows の [コンピュータの管理] コンソール(またはサーバ オペレーティング システムの [サーバー マネージャー] コンソール)で、ログインを追加します。
ここでは、editor1、editor2、manager1 の 3 つのログインを作成します。
-
Windows の [コンピュータの管理] または [サーバー マネージャ] コンソールを開きます。
コンソールの開きかたは、Windows のバージョンによって異なります。
- PC では [システム ツール] の [ローカル ユーザとグループ] を展開します。サーバでは、[構成] の下の [ローカル ユーザとグループ] を展開します。
- ユーザ フォルダを右クリックして [新しいユーザー] をクリックします。
- [ユーザ名] テキスト ボックスに、「editor1」と入力します。
-
[パスワード] および [パスワードの確認] の両方のテキスト ボックスに、「Editor.1」と入力します。
コンピュータがパスワード ポリシーを使用している場合は、その要件を満たすパスワードを入力します。
-
[ユーザは次回ログオン時にパスワードの変更が必要] チェックボックスをオフにします。
-
[作成] をクリックします。
テキスト ボックスはクリアされますが、ダイアログ ボックスは開いたままです。
- [ユーザ名] テキスト ボックスに、「editor2」と入力します。
-
[パスワード] および [パスワードの確認] の両方のテキスト ボックスに、「Editor.2」と入力します。
コンピュータがパスワード ポリシーを使用している場合は、その要件を満たすパスワードを入力します。
- [ユーザは次回ログオン時にパスワードの変更が必要] チェックボックスをオフにします。
- [作成] をクリックします。
- [ユーザ名] テキスト ボックスに、「manager1」と入力します。
-
[パスワード] および [パスワードの確認] の両方のテキスト ボックスに、「Manager.1」と入力します。
コンピュータがパスワード ポリシーを使用している場合は、その要件を満たすパスワードを入力します。
- [ユーザは次回ログオン時にパスワードの変更が必要] チェックボックスをオフにします。
- [作成] をクリックして、[閉じる] をクリックします。
コンピュータ上に、3 つの新しいログイン(editor1、editor2、manager1)が作成されました。次に、これらのログインをデータベース サーバに追加します。
これらのログインが同じ種類のタスクを実行し、データベース サーバ上のジオデータベースで同じ権限を持つ場合、Windows グループをセット アップしてこれらを追加できます。ただし、このチュートリアルでは editor1、editor2、manager1 に異なる権限を割り当てるため、Windows ログインのみを使用します。
データベース サーバへのログインの追加
3 人の新しいユーザに Windows ログインを作成したので、これらをデータベース サーバに追加できます。ユーザの追加を行うには、データベース サーバレベルの [権限] ダイアログ ボックスを使用します。
データベース サーバ管理者は、データベース サーバレベルの [権限] ダイアログ ボックスで、ログインの追加と削除、サーバ管理者権限の付与を実行できます。これらのログインはいずれもデータベース サーバ管理者にはならないので、以下の一連の手順で権限を割り当てられることはありません。
- ArcMap を開きます。
- カタログ ウィンドウで、データベース サーバを右クリックし、[権限] をクリックします。
- [ユーザの追加] をクリックします。
- [選択するオブジェクト名を入力してください] テキスト ボックスに、「editor1」と入力します。
-
[名前の確認] をクリックします。
フィールドに、ご使用のコンピュータ名が editor1 の先頭に付加されて表示されます(ネットワーク ユーザの場合、名前の先頭に付加されるのはネットワーク名です)。
- [OK] をクリックします。
- ステップ 3 ~ 6 を繰り返し実行して、データベース サーバに editor2 と manager1 を追加します。
- [OK] をクリックして変更内容を適用し、[権限] ダイアログ ボックスを閉じます。
デフォルトのジオデータベース権限
データベース サーバに editor1、editor2、および manager1 のログインを追加した時点で、3 つのログインすべてが Osokopf ジオデータベースと buildings08 ジオデータベースにユーザとして追加されています。これを確認するには、ジオデータベースレベルの [権限] ダイアログ ボックスを開きます。
-
buildings08 ジオデータベースを右クリックし、[管理] をポイントして、[権限] をクリックします。
ジオデータベースレベルの [権限] ダイアログ ボックスが開きます。[データベース サーバ ユーザ] リストに、データベース サーバに追加されたログインが表示されます。
-
editor1 を選択します。
editor1 に [ジオデータベース権限なし] が選択されていることを確認してください。これは、データベース サーバ管理者以外の新規ユーザに対する、デフォルトのジオデータベースレベルの権限です。
[ジオデータベース権限なし] は、ユーザがジオデータベースに対して特定の権限を持たないことを示します。権限が [ジオデータベース権限なし] に設定されているユーザは、データベース サーバにログインした際に、ジオデータベースの表示は許可されますが、ジオデータベース上での処理の実行は一切許可されません。
ジオデータベースの [権限] ダイアログ ボックスに表示されるように、使用可能なジオデータベースレベルの権限は、[ジオデータベース権限なし] の他に [読み取り専用]、[読み取り/書き込み]、および [ジオデータベース管理者] があります。
ジオデータベースレベルの権限の付与
読み取り専用権限を持つユーザは、データベース サーバにログインした際に、ジオデータベースとその中に格納されているデータの表示を許可されます。このユーザはデータベースの照会および ArcMap でのデータの使用を許可されますが、(ユーザが特定のデータセットに対する読み取り/書き込み権限を付与されている場合を除き)データの編集は許可されません。データセット権限については、次のセクションで説明します。
ジオデータベースレベルの読み取り/書き込み権限を付与されたユーザは、データの表示と照会を許可されるほか、ジオデータベース内のすべてのデータの編集も許可されます。
ジオデータベース上の管理権限を付与されたユーザは、読み取り/書き込み権限を持つほか、ジオデータベースのメンテナンス タスク(たとえば、データベース圧縮やそのジオデータベースのバックアップ)を実行することもできます。ジオデータベース管理者は、そのジオデータベース上での既存のユーザの権限を管理できます。
ユーザ権限は、その権限が付与されているジオデータベースに対してのみ適用されます。ユーザはデータベース サーバレベルの管理権限を持たないので、データベース サーバレベルの管理タスク(たとえば、ユーザの追加やアタッチ、ジオデータベースのデタッチ、回復、作成)を実行することはできません。
editor1 は buildings08 ジオデータベース内および Osokopf ジオデータベース内のすべてのデータを編集できる必要があります。manager1 は buildings08 ジオデータベースを管理していますが、許可されているのは Osokopf ジオデータベース内のデータの表示だけです。editor2 は特定のデータセットだけを編集でき、ジオデータベース レベルの権限は一切付与されません。データベース サーバ管理者として editor1 と manager1 に適切なジオデータベース権限を付与します。
- Osokopf ジオデータベースを右クリックし、[管理] をポイントして、[権限] をクリックします。
-
[データベース サーバ ユーザ] リストで editor1 を選択し、[読み取り/書き込み] → [適用] をクリックします。
ジオデータベース上で読み取り/書き込み権限を持つロールに、editor1 が追加されます。この権限はジオデータベース レベルで適用されるので、editor1 は Osokopf ジオデータベース内のすべてのデータに対する読み取り/書き込み権限を得たことになります。
-
[データベース サーバ ユーザ] リストから manager1 を選択して、[ジオデータベース管理者] をクリックします。
manager1 が、ジオデータベースの管理者(db_owner)権限を持つロールに追加されます。
- [OK] をクリックして変更内容を適用し、Osokopf ジオデータベース用の [権限] ダイアログ ボックスを閉じます。
- buildings08 ジオデータベースを右クリックし、[管理] をポイントして、[権限] をクリックします。
-
[データベース サーバ ユーザ] リストで editor1 を選択し、[読み取り/書き込み] → [適用] をクリックします。
これで、editor1 は buildings08 ジオデータベース内においてもすべてのデータに対する読み取り/書き込み権限を取得しました。
-
[データベース サーバ ユーザ] リストから manager1 を選択して、[読み取り専用] をクリックます。
buildings08 ジオデータベース内のすべてのデータの表示と選択のみ許可されているジオデータベース内のロールに、manager1 が追加されます。
- [OK] をクリックして変更内容を適用し、buildings08 ジオデータベースの [権限] ダイアログ ボックスを閉じます。
データセット権限の変更
データセット レベルで付与できる権限には、ジオデータベース権限なし、読み取り専用、読み取り/書き込みの 3 種類があります。データセットに対する他のユーザの権限を変更できるのは、そのデータセットの所有者のみです。
誰がデータセットを所有しているかは、スキーマ名によってわかります。スキーマ名は、テーブル、フィーチャクラス、フィーチャ データセット、ラスタ カタログ、ラスタ データセット、またはモザイク データセットの完全修飾名に表示されます。データセットを作成したユーザのスキーマ名は、データセットの名前に組み込まれ、引用符で囲まれます。たとえば、ドメイン アカウント universe\ghila を持つユーザが proj_work ジオデータベース内にテーブル(contacts)を作成した場合、そのテーブルの完全修飾名は proj_work."universe\ghila".contacts となります。
データベース サーバ管理者は dbo スキーマを使用するため、データベース サーバ管理者によって作成されたデータは、データセット名に dbo を含めた名前になります。dbo のメンバーであるすべてのユーザ(つまり、データベース サーバ管理者であるすべてのユーザ)は、dbo スキーマ内のデータセットの所有者であると見なされます。
buildings08 ジオデータベース内の editor1 と manager1 に対するジオデータベースレベルの権限を変更した場合、変更後の権限は対象のジオデータベース内のデータセットに適用されます。たとえば、buildings08 ジオデータベース上でのジオデータベースレベルの読み取り/書き込み権限を付与された editor1 は、対象のジオデータベース内のすべてのデータに対する読み取りと書き込みアクセス権限を得たことになります。このジオデータベース内のどのデータに対しても、editor1 のデータセットレベル権限を変更することはできません。editor1 はすでにすべてのデータセットに対して最高レベルの権限を得ているためです。これを確認するには、次の手順に従ってください。
- buildings08 ジオデータベースを展開します。
-
gov_bldgs フィーチャクラスを右クリックし、[管理] をポイントして、[権限] をクリックします。
データセットレベルの [権限] ダイアログ ボックスが開きます。
-
[データベース サーバ ユーザ] リストから、editor1 を選択します。
すべての権限オプションが非アクティブになります。注記には、ユーザがデータセットレベルの権限よりも高いレベルの権限を持っていることが示されます。
manager1 は、buildings08 ジオデータベース上でのジオデータベースレベルの読み取り専用権限を持ちます。その結果、manager1 はすべてのデータに対する読み取り専用データセットレベル権限を持ちます。これを確認するには、[データベース サーバ ユーザ] リストから、manager1 を選択します。
付与可能な上位レベルの権限(読み取り/書き込み)が存在しているので、buildings08 ジオデータベース内のデータセットに対する manager1 の個々の権限の変更を行うことができます。
現時点で buildings08 ジオデータベース内と Osokopf ジオデータベース内に存在するすべてのデータセットは、dbo が所有しているので、これらのジオデータベース内のデータセットに対するユーザ権限を変更することができます。この変更を行うには、次の手順に従います。
- buildings08 ジオデータベース内の gov_bldgs フィーチャクラスを右クリックし、[管理] をポイントして、[権限] をクリックします。
- [データベース サーバ ユーザ] リストで manager1 を選択します。
- [読み取り/書き込み] をクリックします。
- [OK] をクリックします。
これで、gov_bldgs フィーチャクラスに対する読み取り/書き込み権限が、manager1 に付与されました。buildings08 ジオデータベース内の他のデータセットに対する権限は、読み取り専用のままです。
これを確認するには、次の手順を実行します。
- utilities フィーチャクラスを右クリックし、[管理] をポイントして、[権限] をクリックします。
-
[データベース サーバ ユーザ] リストで manager1 を選択します。
このフィーチャクラスに対する読み取り専用権限が、manager1 に割り当てられたままであることに注目しましょう。
editor2 に schools フィーチャクラスを編集する権限を付与します。
- schools フィーチャクラスを右クリックし、[管理] をポイントして、[権限] をクリックします。
- [データベース サーバ ユーザ] リストから、editor2 を選択します。
- [読み取り/書き込み] をクリックします。
- [OK] をクリックして変更内容を適用し、データセットの [権限] ダイアログ ボックスを閉じます。
次に、editor2 に Osokopf ジオデータベース内の parks フィーチャ データセットを表示する権限を付与します。
- Osokopf ジオデータベースを展開します。
- parks フィーチャ データセットを右クリックし、[管理] をポイントして、[権限] をクリックします。
- [データベース サーバ ユーザ] リストから、editor2 を選択します。
- [読み取り専用] をクリックします。
- [OK] をクリックして変更内容を適用し、データセットの [権限] ダイアログ ボックスを閉じます。
変更内容のバックアップ作成
ユーザの追加と権限の変更が完了したので、次に buildings08 ジオデータベースと Osokopf ジオデータベースの両方のバックアップを作成します。演習 3 の指示に従って、最初のバックアップと同じ場所にバックアップ ファイルを作成しますが、バックアップ ファイルの名前と説明は変更します。
buildings08 ジオデータベースの 2 つめのバックアップに buildings_bu2 という名前を付け、「ユーザを追加し、権限付与した」などの説明を入力します。Osokopf バックアップには、osokopf_bu1 などの名前を付けます。
この演習では、Windows ログインを作成してデータベース サーバに追加した後、それらのログインに 2 通りのジオデータベースに対する権限を付与しました。また、データセットに対するユーザの権限の 1 つを変更しました。以上の操作で、ユーザがデータを編集できるようになりました。「演習 5」では、別のユーザとしてデータベース サーバにログインし、データを読み込み、編集情報の記録を設定します。