Skip To Content

Включить управление доступом на основе владения

Для объектов, которые вы публикуете из ArcMap на Мои размещенные сервисы (My Hosted Services), вы можете установить, кому разрешено редактировать объекты, и какие изменения может вносить тот или иной пользователь; для этого необходимо, чтобы в векторном слое была включена функция управления доступом на основе владения.

Управление доступом на основе владения позволяет установить, какие операции редактирования могут быть применены к тем или иным объектам, и кто может осуществлять редактирование. Например, вы можете настроить векторный слой таким образом, чтобы объекты мог обновлять или удалять только тот пользователь, который их добавил, а все остальные пользователи, подключающиеся к этому слою, могли бы только обращаться к этим объектам с запросами.

Как вы будете включать функцию управления доступом на основе владения, зависит от того, использует ли ваш портал для хранения данных сетевого векторного слоя ArcGIS Data Store или управляемую базу данных. Если ваш портал использует ArcGIS Data Store, то вы можете включить функции отслеживания редактирования и управления доступом на основе владения векторным слоем в сведениях об элементе слоя. Если для данных векторного слоя ваш портал использует управляемую базу данных, то для включения функции управления доступом на основе владения вы должны выполнить шаги, описанные в настоящем разделе.

Подготовка данных

Сначала вы должны включить функцию отслеживания редактирования на векторном слое (или классах пространственных объектов), и только после этого вы сможете задать для векторного слоя правила доступа на основе владения.

Публикация класса пространственных объектов

Чтобы опубликовать класс объектов в Мои размещенные сервисы (My Hosted Services), следуйте инструкциям в разделе Публикация объектов (Publish features).

Включение функции управления доступом на основе владения

Войдите в ArcGIS Server Manager, остановите сервис объектов и включите для него функцию управления доступом на основе владения.

  1. Войдите в ArcGIS Server Manager от имени администратора портала или владельца векторного слоя.
  2. Откройте папку Размещенные (Hosted) и остановите сервис объектов, нажав Остановитькнопку Остановить (Stop).
  3. Дважды щелкните сервис, чтобы открыть его свойства.
  4. Нажмите Функции (Capabilities).
  5. Выберите в списке функций Доступ к объектам (Feature Access).
  6. В разделе Свойства (Properties) выберите Включить управление доступом к объектам на основе владения.
  7. В разделе Доступные операции с объектами, созданными другими пользователями выберите операции редактирования объектов, которые будут разрешены другим людям, не создававшим эти объекты.

    Например:

    • Если вы снимете отметку с опции Запрос (Query), пользователь, вошедший в сервис объектов, увидит только объекты, созданные им самим.
    • Если опция Запрос (Query) отмечена, а опции Обновление (Update) и Удаление (Delete) нет, все пользователи, за исключением автора объекта, будут иметь к объекту доступ только для чтения.
    • Если опции Запрос (Query) и Обновление (Update) отмечены, а Удаление (Delete) нет, пользователи, не являющиеся владельцами объекта, могут запрашивать и изменять его, но не удалять.

  8. Сохраните изменения, которые вы внесли в свойства сервиса.

Запуск сервиса объектов векторного слоя

Включив отслеживание редактирования и управление доступом на основе владения, перезапустите сервис объектов векторного слоя.

  1. Щелкните ссылку Размещенные (Hosted), чтобы вернуться к списку размещенных сервисов.
  2. Нажмите кнопку Запустить Пуск (Start) рядом с сервисом объектов векторного слоя, чтобы перезапустить его.

Теперь люди, у которых есть права доступа для редактирования смогут подключаться к вашему сервису объектов и выполнять с ними только те операции, которые им разрешены. В случае любых изменений в векторном слое система будет фиксировать имя подключавшегося пользователя и время, когда эти изменения были сделаны. Примите во внимание, что если векторный слой находится в общем доступе (доступен для всех), то ни одного имени пользователя сохранено не будет.