要素服务允许您控制用户可对服务执行哪些类型的编辑。 您可以在发布时指定编辑设置,也可以在 ArcGIS Server Manager 中为 ArcGIS Server 要素服务更改编辑器设置。 如果您发布托管要素图层,则可以更改门户中要素图层项目的编辑器设置。
发布时的编辑器设置
当您发布引用已注册数据源或从 ArcGIS Pro 复制数据的 Web 要素图层时,请更改共享为 Web 图层窗格的配置选项卡上的编辑者权限。 有关说明,请参阅 ArcGIS Pro 帮助中的配置 Web 要素图层。
ArcGIS Server 要素服务的编辑者设置
发布者和管理员可以在 ArcGIS Server Manager 中更改 ArcGIS Server 要素服务的编辑者权限。
编辑操作
您可从 ArcGIS Server Manager 中服务页面的功能选项卡来启用或禁用以下要素服务操作。 必须在功能列表中选择要素访问以访问这些操作。
- 创建使编辑者可以将要素添加到要素服务中。 默认情况下,会启用此操作。
- 删除使编辑者可以在要素服务中删除要素。 默认情况下,会启用此操作。
- 提取使编辑者可以将数据的副本提取到文件地理数据库或 SQLite 数据库内,方法是使用应用了 createReplica REST 操作的自定义应用程序,同时将 syncModel 参数设置为 none。 默认情况下,此操作处于禁用状态。
- 更新使编辑者可以在要素服务中更新要素。 他们可以移动现有要素或更改要素的属性值。 默认情况下,会启用此操作。
- 借助同步,用户可在离线情况下处理要素服务数据。 尽管此操作并非严格用于编辑(您也可以启用同步以使要素服务离线供参考而非编辑),但它最常用于允许离线编辑。 要了解详细信息,请参阅准备离线使用的要素服务。 默认情况下,此操作处于禁用状态。
- 用户需要通过查询在要素服务中查看数据。 大多数情况下,您将启用查询操作。 但是,如果与您共享此要素服务的编辑者只会添加要素,而他们看不到其他编辑者添加的要素,则可以禁用查询操作。 这对仅需要用户输入新要素而不需要查看、编辑或删除现有要素的自定义应用程序尤其有用。 请注意,服务所有者和 ArcGIS Server 管理员仍旧可以查看、编辑和删除现有要素。
如果禁用了某项操作,那么当用户尝试执行该操作所对应的任何动作时,服务就会返回错误。 客户端应用程序,比如那些通过 ArcGIS Web API 构建的应用程序,可在尝试应用编辑内容前检查所允许的操作。 您可以对这些应用程序进行设计以禁用或限制相应的命令,从而与允许的操作相符。
对于要素服务中能够存储附件的图层,要素服务的编辑者可通过创建或更新操作向要素添加附件。 编辑者可通过更新操作进一步更新或删除与要素相关联的附件。 如果仅启用了删除操作,则编辑者可以删除附件。
注:
所允许的操作仅应用于发布者和用户。 服务器管理员和服务所有者对启用了所有操作的服务具有完全访问权限。
影响编辑的属性
要素访问属性根据您设置的操作构建,并使您能够进一步控制其他用户能够对要素服务进行的操作。 例如,如果您启用了更新操作,但是您希望编辑者仅编辑非空间属性,则您可以禁用允许几何更新属性。 或者,如果您希望编辑者编辑几何,但前提是该几何不包含真曲线,则您可以启用允许几何更新但需禁用允许更新真曲线。 以下列表描述了这些和其他与编辑有关的,可为 ArcGIS Server 要素服务设置的属性:
- 允许几何更新使编辑者可以对要素服务中要素的几何进行编辑。 默认情况下,会启用该选项。 如果禁用此选项,则编辑者只能更新要素服务中要素的非空间属性。
- 允许更新真曲线使编辑者即便在几何包含真曲线时也能更新几何。 注意,如果编辑者从不支持真曲线的任意客户端更新真曲线几何,则要素的真曲线几何将替换为增密几何。
默认情况下,将启用此操作,并且此操作仅在已启用允许几何更新时可用。 如果禁用允许更新真曲线,则编辑者会在尝试编辑真曲线几何时接收到错误。
- 默认情况下将启用仅允许由真曲线客户端更新真曲线,这有助于保护真曲线数据不被增密几何替代。 如果您希望确保真曲线几何仅通过能够保留真曲线的客户端进行编辑,则请将此属性保持为启用。 如果您的工作流不包含使用能够保留或创建真曲线的客户端,则您可以禁用此属性。
警告:
当前仅有 ArcGIS Pro 1.3 及更高版本支持真曲线几何。 如果数据中包含真曲线,且您启用了允许更新真曲线但未启用仅允许由真曲线客户端更新真曲线,则当采用其他 ArcGIS 客户端编辑时,几何将以增密版本的真曲线的形式返回。
- 可通过应用默认 z 值指定默认的 z 值。 如果编辑者通过要素服务添加或更新要素且未指定 z 值,则将应用此默认 z 值。 有关详细信息,请参阅为可编辑的要素服务配置默认 z 值。
- 允许在没有 m 值的情况下进行几何更新,此设置可在启用了要素服务中用于存储 m 值的图层,但尚未使用该 m 值的情况下使用。 当编辑者通过要素服务编辑要素几何时,如果客户端未提供值,则将插入 NaN m 值。 有关详细信息,请参阅配置包含启用了 m 值的图层的可编辑要素服务。
- 对要素启用基于所有权的访问控制可防止用户访问不属于他们的要素。 有关详细信息,请参阅要素服务基于所有权的访问控制。
注:
针对要素的基于所有权的访问控制仅适用于企业级地理数据库,而不适用于数据库。
高级编辑选项
单击功能选项卡底部的高级选项按钮,以配置以下与通过要素服务来编辑数据相关的其他选项:
- 通过要素服务进行编辑时,可通过应用编辑时向用户名添加范围指定要附加至所记录的 ArcGIS Server 用户名的值。 此选项有助于区分用户是通过要素服务进行编辑,还是直接针对地理数据库中的数据进行编辑。 要启用此选项,请选中应用编辑时向用户名添加范围,然后输入您希望添加至用户名的范围值。 有关详细信息,请参阅要素服务的编辑器追踪。
- 传统版本化同步和分支版本化同步部分中的为每个下载的地图创建版本选项可影响到包含版本化数据且启用了同步的要素服务的行为。 在要素服务上启用此选项后,每次用户下载包含此要素服务的地图时,都会创建一个复本版本。 有关针对在离线地图中使用版本化数据的说明(包括对这些选项的说明),请参阅离线地图与传统版本化数据。
- 过滤 Web 内容可防止输入不受支持的 HTML 实体或属性。 此选项在默认情况下启用,除非编辑者需要输入这些不受支持的 HTML 实体的功能,否则不要禁用过滤 Web 内容。 禁用此选项将允许用户向文本框中输入任何文本,这样会使服务暴露于跨站点脚本 (XSS) 的潜在攻击之中。
托管要素图层的编辑器设置
要更改现有托管要素图层的编辑器设置,请在门户中打开要素图层项目详细信息页面的设置选项卡。 有关说明,请参阅管理托管要素图层。
配置多个访问级别
如果您需要支持多个级别的用户(每个级别均需要不同的编辑访问),则建议的方法因 web 要素图层类型而异。
- 对于 ArcGIS Server 要素服务,请为每个级别的用户创建一个服务。 例如,您可以创建一个启用了所有编辑操作的 Professors 服务。 您可以创建第二个仅启用创建和查询操作的权限较低的 Students 要素服务。 将各个服务与适当的用户群组共享。
- 对于托管要素图层,从托管要素图层创建托管要素图层视图,然后在每个视图上授予不同的编辑权限。 与适当的用户群组共享托管要素图层视图。