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