更改权限 (数据管理)

摘要

建立或更改输入企业级数据库数据集、独立要素类或表的用户访问权限。

使用情况

  • 编辑企业级地理数据库数据集时需满足下面两项条件:

    • 必须将 View 参数设置为授予查看权限(Python 中为 GRANT)。
    • 必须将 Edit 参数设置为授予编辑权限(Python 中为 GRANT)。
    因为不可见(查看)的数据集无法进行编辑,因此“编辑”权限依赖于“查看”权限。

  • 即使撤消了“编辑”权限,仍然可以查看数据集。但是,如果撤消了“查看”权限,则“编辑”权限也将随之自动撤消。

  • 关系数据库管理系统 (RDBMS) 中等效于 View 参数的命令是 Select。

  • RDBMS 中等效于 Edit 参数的命令是 Update、Insert 和 Delete。这三个命令均可通过 Edit 参数同时授予或撤消权限。

  • 以下的参数描述使用了术语:用户或用户名。数据库角色也可以用来代替用户名。在支持操作系统组的 RDBMS 平台上,可以指定操作系统组来代替用户名。

参数

标注说明数据类型
输入数据集

将更改访问权限的数据集、要素类或表。

Layer; Table View; Dataset; Address Locator
用户

要修改其权限的数据库用户名。

String
查看(选择)
(可选)

建立用户的查看权限。

  • 不更改查看权限不更改用户现有查看权限。如果用户具有查看权限,则将继续持有查看权限。如果用户不具备查看权限,则将继续不持有查看权限。
  • 授予查看权限允许用户查看数据集。
  • 撤消查看权限撤消用户查看数据集的所有权限。
String
编辑(更新/插入/删除)
(可选)

建立用户的编辑权限。

  • 不更改编辑权限 不更改用户现有编辑权限。如果用户具有编辑权限,则将继续持有编辑权限。如果用户不具备编辑权限,则将继续不持有编辑权限。这是默认设置。
  • 授予编辑权限允许用户编辑输入数据集。
  • 撤消编辑权限撤消用户的编辑权限。用户仍然可以查看输入数据集。
String

派生输出

标注说明数据类型
更新的数据集

已更新的数据集。

图层、表视图、数据集

arcpy.management.ChangePrivileges(in_dataset, user, {View}, {Edit})
名称说明数据类型
in_dataset
[in_dataset,...]

将更改访问权限的数据集、要素类或表。

Layer; Table View; Dataset; Address Locator
user

要修改其权限的数据库用户名。

String
View
(可选)

建立用户的查看权限。

  • AS_IS不更改用户现有查看权限。如果用户具有查看权限,则将继续持有查看权限。如果用户不具备查看权限,则将继续不持有查看权限。
  • GRANT允许用户查看数据集。
  • REVOKE撤消用户查看数据集的所有权限。
String
Edit
(可选)

建立用户的编辑权限。

  • AS_IS 不更改用户现有编辑权限。如果用户具有编辑权限,则将继续持有编辑权限。如果用户不具备编辑权限,则将继续不持有编辑权限。这是默认设置。
  • GRANT允许用户编辑输入数据集。
  • REVOKE撤消用户的编辑权限。用户仍然可以查看输入数据集。
String

派生输出

名称说明数据类型
out_dataset

已更新的数据集。

图层、表视图、数据集

代码示例

ChangePrivileges 示例(独立脚本)

以下独立脚本演示了如何为 WendelClark 授予查看和编辑权限。

# Name: GrantPrivileges_Example.py
# Description: Grants view and edit privileges to WendelClark
# Import system modules
import arcpy
# Set local variables
datasetName = "c:/Connections/gdb@production.sde/production.GDB.ctgFuseFeature"
# Execute ChangePrivileges
arcpy.ChangePrivileges_management(datasetName, "WENDELCLARK", "GRANT", "GRANT")

许可信息

  • Basic: 否
  • Standard: 是
  • Advanced: 是

相关主题