练习 4:添加用户并管理他们的权限
本主题仅适用于 ArcGIS for Desktop Standard 和 ArcGIS for Desktop Advanced。
创建您的登录帐户以准备完成本教程时,您的登录帐户将被添加到数据库服务器中。
通常,其他用户也可能需要访问数据库服务器。为此,您必须将这些用户的登录帐户添加到数据库服务器。在执行添加操作之前,该 Windows 登录帐户必须存在于计算机中或网络上。因此,在本练习中,首先会将登录帐户添加到计算机中,然后再将它们添加到数据库服务器。
![注 注](rsrc/note.png)
如数据库服务器教程快速浏览中所述,如果您本身不具备管理员权限,则必须请系统管理员为您创建用户。
将登录帐户添加到计算机
可通过 Windows 计算机管理控制台(或服务器操作系统上的服务器管理器控制台)添加登录帐户。
将创建三个登录帐户:editor1、editor2 和 manager1。
-
打开 Windows 计算机管理控制台或服务器管理器控制台。
控制台的打开方式将取决于您使用的 Windows 版本。
- 在 PC 上,展开系统工具中的本地用户和组。在服务器上,本地用户和组可在配置下找到。
- 右键单击“用户”文件夹,然后单击新建用户。
- 在用户名文本框中输入 editor1。
-
在密码和确认密码文本框中同时输入 Editor.1。
如果您的计算机使用了密码策略,请提供满足该策略的密码。
-
取消选中用户下次登录时须更改密码。
-
单击创建。
文本框将被清除,但对话框仍打开。
- 在用户名文本框中输入 editor2。
-
在密码和确认密码文本框中同时输入 Editor.2。
如果您的计算机使用了密码策略,请提供满足该策略的密码。
- 取消选中用户下次登录时须更改密码。
- 单击创建。
- 在用户名文本框中输入 manager1。
-
在密码和确认密码文本框中输入 Manager.1。
如果您的计算机使用了密码策略,请提供满足该策略的密码。
- 取消选中用户下次登录时须更改密码。
- 单击创建,然后单击关闭。
您的计算机上现在有三个新登录帐户:editor1、editor2 和 manager1。接下来,将这三个登录帐户添加到数据库服务器。
![提示 提示](rsrc/tip.png)
如果这三个登录帐户将执行同类型的任务并且对数据库服务器上的地理数据库具有相同的权限,则可以建立 Windows 组并将他们分配到该组中。但在本教程中,editor1、editor2 和 manager1 具有不同的权限,因此使用 Windows 登录帐户即可。
将登录帐户添加到数据库服务器
为这三个新用户创建 Windows 登录帐户后,可将它们添加到数据库服务器。使用数据库服务器级别的权限 对话框可完成此操作。
在数据库服务器级别的权限 对话框中,数据库服务器管理员可以添加和移除登录帐户以及授予服务器管理员权限。由于这三个登录帐户都不会成为数据库服务器管理员,所以在这一系列步骤中不会给他们分配权限。
- 重新打开 ArcMap。
- 在 Catalog 窗口中,右键单击数据库服务器,然后单击权限。
- 单击添加用户。
- 在输入要选择的对象名称文本框中输入 editor1。
-
单击检查名称。
前面带计算机名称的 Editor1 将显示在该字段中。(如果该用户是网络用户,则其名称前将带有网络名称。)
- 单击确定。
- 重复步骤 3 到 6 将 editor2 和 manager1 添加到数据库服务器。
- 单击确定应用更改并关闭权限对话框。
默认地理数据库权限
将 editor1、editor2 和 manager1 登录帐户添加到数据库服务器后,他们也将被作为用户添加到 Osokopf 和 buildings08 地理数据库。通过打开地理数据库级别的权限 对话框可以看到。
-
右键单击 buildings08 地理数据库,指向管理,然后单击权限。
将打开地理数据库级别的权限对话框。在数据库服务器用户列表中,可以看到刚添加到数据库服务器的登录帐户。
-
选择 editor1。
请注意,为 editor1 选择的选项是无地理数据库权限。对于不是数据库服务器管理员的新用户,这是默认的地理数据库级别的权限。
无地理数据库权限表示用户对地理数据库没有特定权限。如果权限为“无地理数据库权限”的用户登录到数据库服务器,那么他只能看到地理数据库而不能对该地理数据库执行任何操作。
如地理数据库的权限 对话框所示,其他可用的地理数据库级权限分别为只读、读/写和地理数据库管理员。
授予地理数据库级别的权限
如果具有只读权限的用户登录到数据库服务器,那么他可以查看地理数据库和其中存储的数据。该用户可以在 ArcMap 中查询数据库和使用数据,但不能编辑数据(除非已为该用户授予了对特定数据库的读/写权限。数据集权限将在下一节讨论)。
被授予读/写地理数据库级别权限的用户不仅能查看和查询数据,还能编辑地理数据库中的所有数据。
如果用户被授予地理数据库的管理权限,则该用户具有读/写权限并且可以执行地理数据库维护任务,如数据库压缩和备份该地理数据库。地理数据库管理员还可以管理现有用户对该地理数据库的权限。
用户的权限仅适用于授予用户权限所依据的地理数据库。用户不具有数据库服务器级别的管理权限,因此无法执行数据库服务器级别的管理任务,如添加用户或附加、分离、还原或创建地理数据库。
Editor1 需要具有编辑 buildings08 和 Osokopf 地理数据库中所有数据的权限。Manager1 将管理 buildings08 数据库,但将只能查看 Osokopf 地理数据库中的数据。Editor2 将只能编辑特定数据集,不为其授予任何地理数据库级别的权限。作为数据库服务器管理员,您将为 editor1 和 manager1 授予适当的地理数据库权限。
- 右键单击 Osokopf 地理数据库,指向管理,然后单击权限。
-
从数据库服务器用户列表中选择 editor1,单击读/写,然后单击应用。
这会将 editor1 添加到对该地理数据库具有读/写权限的角色。由于在地理数据库级别授予此权限,因此 editor1 现在对 Osokopf 地理数据库中的所有数据均具有读/写访问权限。
-
从数据库服务器用户列表中选择 manager1,然后单击地理数据库管理员。
这会将 manager1 添加到对该数据库具有管理员权限 (db_owner) 的地理数据库角色。
- 单击确定应用更改并关闭 Osokopf 地理数据库的权限对话框。
- 右键单击 buildings08 地理数据库,指向管理,然后单击权限。
-
从数据库服务器用户列表中选择 editor1,单击读/写,然后单击应用。
Editor1 现在对 buildings08 地理数据库中的所有数据也具有读/写权限。
-
从数据库服务器用户列表中选择 manager1,然后单击只读。
这会将 manager1 添加到仅能查看和选择 buildings08 地理数据库中的所有数据的地理数据库角色中。
- 单击确定应用更改并关闭 buildings08 地理数据库的权限 对话框。
改变数据集权限
针对数据集可以授予三种类型的权限:“无地理数据库权限”、“只读”和“读/写”。仅数据集所有者可以更改其他用户对数据集的权限。
您可以根据表、要素类、要素数据集、栅格目录、栅格数据集或镶嵌数据集的全限定名称中出现的方案名称来判断某一数据集的所有者。数据集创建者的方案名称包含在数据集名称中并用引号括起。例如,如果具有域帐户 universe\ghila 的用户在地理数据库中创建了一个表 (contacts),则表的全限定名称为 proj_work."universe\ghila".contacts。
数据库服务器管理员使用 dbo 方案,因此,他们所创建的数据在数据集名称中含有 dbo。身为 dbo 的成员的任何用户(也就是说,身为数据库服务器管理员的任何用户)都被视为 dbo 方案中的数据集的所有者。
在地理数据库级别更改 editor1 和 manager1 对 buildings08 地理数据库的权限后,这些权限将应用于该地理数据库中的数据集。例如,在地理数据库级别向 editor1 授予对 buildings08 地理数据库的读/写权限,那么该用户就对该地理数据库中的所有数据具有读/写访问权限。您无法在数据集级别更改 editor1 对该地理数据库中的任何数据的权限,因为该用户已具有最高级别的权限。要了解相关情况,请执行以下步骤:
- 展开 buildings08 地理数据库。
-
右键单击 gov_bldgs 要素类,指向管理,然后单击权限。
将打开数据集级别的权限 对话框。
-
从数据库服务器用户列表中选择 editor1。
所有权限选项都处于禁用状态,并提示该用户具有更高级别的权限。
Manager1 对 buildings08 地理数据库具有地理数据库级别的“只读”权限。因此,manager1 对所有数据具有数据集级别的“只读”权限。要了解相关情况,请从数据库服务器用户列表中选择 manager1。
由于有更高级别权限(读/写)可供授予,因此可以更改 manager1 对 buildings08 地理数据库中各数据集的权限。
由于 buildings08 和 Osokopf 地理数据库中的所有现有数据集都归 dbo 所有,所以您可以更改用户对这些地理数据库中任何数据集的权限。为此,请执行以下步骤:
- 右键单击 buildings08 地理数据库中的 gov_bldgs 要素类,指向管理,然后单击权限。
- 从数据库服务器用户列表中选择 manager1。
- 单击读/写。
- 单击确定。
Manager1 此时对 gov_bldgs 要素类具有读/写访问权限。对 buildings08 地理数据库中其他数据集的权限仍是只读。
要对此进行确认,请执行以下步骤:
- 右键单击 utilities 要素类,指向管理,然后单击权限。
-
从数据库服务器用户列表中选择 manager1。
可以看到,manager1 对此要素类仍具有只读权限。
向 editor2 授予权限以编辑 schools 要素类。
- 右键单击 schools 要素类,指向管理,然后单击权限。
- 从数据库服务器用户列表中选择 editor2。
- 单击读/写。
- 单击确定应用更改并关闭数据集权限 对话框。
现在,向 editor2 授予权限以查看 Osokopf 地理数据库中的 parks 要素数据集。
- 展开 Osokopf 地理数据库。
- 右键单击 parks 要素数据集,指向管理,然后单击权限。
- 从数据库服务器用户列表中选择 editor2。
- 单击只读。
- 单击确定应用更改并关闭数据集权限 对话框。
创建更改内容的备份
添加用户并更改权限后,可以创建 buildings08 和 Osokopf 地理数据库的备份。按照练习 3 中的说明在第一个备份所在的位置创建备份文件,但要更改备份文件的名称和描述。
例如,可以将 buildings08 地理数据库的第二个备份命名为 buildings_bu2,并且可以输入说明“已添加用户且已授予权限”。可以将 Osokopf 备份命名为 osokopf_bu1。
在本练习中,您创建了 Windows 登录帐户,将其添加到数据库服务器,并且为其授予对这两个地理数据库的权限。还更改了一个用户对数据集的权限。现在用户可以编辑数据。在练习 5 中,您将以另一位用户的身份登录到数据库服务器,加载数据并设置编辑者追踪。