Сервисы объектов предоставляют способ опубликовать данные в сети и позволяют пользователям редактировать эти данные при подключении к сервису объектов. Если для данных вашего сервиса объектов включено отслеживание редактирования, ArcGIS Server может записывать кто редактировал данные в сервисе объектов и когда были внесены изменения. Эта информация хранится в полях, которые задает владелец данных в момент включения отслеживания изменений для исходных данных.
Отслеживание изменений включается на уровне класса пространственных объектов или таблицы. Вы можете включить отслеживание изменений для некоторых или всех слоёв сервиса объектов одним из перечисленных ниже способов:
- Воспользуйтесь инструментом геообработкиВключить отслеживание изменений в ArcGIS Desktop или вызовите инструмент из скрипта Python.
- Подключитесь к классу объектов базы геоданных или таблице на панели Каталога в ArcGIS Pro и включите отслеживание изменений в контекстном меню Управлять.
- Подключитесь к набору данных в дереве Каталоги в ArcMap и включите отслеживание изменений в контекстном меню или диалоговом окне Свойства.
Примечание:
- Вы можете включить отслеживание изменений для данных в многопользовательской или рабочих групп базе геоданных, но не в базе данных.
- Включить отслеживание изменений для класса пространственных объектов или таблицы может только владелец.
- При включении отслеживания изменений в классах объектов и таблицах источника после публикации сервиса объектов необходимо перезапустить сервис.
Если прошедший аутентификацию пользователь редактирует сервис объектов, который содержит слои с включенным отслеживанием изменений, пользователь , который выполнил вход в ArcGIS Server записывается в полях автора и редактора, а дата и время добавления или редактирования пространственного объекта – в соответствующих полях добавления и правки.
Если же неавторизованный пользователь редактирует сервис объектов, который содержит слои с включенным отслеживанием изменений, ESRI_Anonymous записывается в полях автора и редактора, а дата и время добавления или редактирования пространственного объекта – в соответствующих полях добавления и правки; но при просмотре этих полей через сервис объектов они выглядят пустыми. Помните, что если вы добавляете незащищённый сервис объектов в ArcGIS Online или на портал ArcGIS Enterprise (иными словами, у сервиса нет аутентификации ArcGIS Server), редактирование считается осуществлённым от имени неавторизованного пользователя и ESRI_Anonymous записывается в поля автора и редактора.
Более подробно:
Чтобы отследить, кто создал или отредактировал данные, вашему приложению в какой-то момент придется обратиться за учетными данными пользователей к ArcGIS Server, чтобы вы получили маркеры токены доступа с этой информацией. Этот токен доступа добавляется к запросам сервиса объектов, чтобы сообщить, кто производит запросы.
Зачем использовать отслеживание изменений?
Ниже приводятся некоторые примеры того, как можно использовать настройки отслеживания редактирования.
Отчетность и контроль качества
Отслеживание того, кто внес изменения, и когда были применены правки, поможет обеспечить отчетность и контроль качества объектов, добавляемых вами в базу геоданных. Вы можете проследить, кто создавал пространственные объекты, кто был последним редактором и, дополнительно, когда производилось последнее редактирование, чтобы найти ответственного за те или иные правки существующих пространственных объектов. Если вы решите включить архивирование, вы можете получить всю историю изменений, в том числе удалений и первого автора этого объекта.
Отслеживание изменений во времени
Чтобы узнать, сколько всего было внесено изменений, вы можете найти дату последней правки и дату создания. Это помогает выявить тенденции и проследить взаимосвязь с датой. Если вы решите включить архивирование, вам не нужно отслеживать изменения, чтобы соответствовать этим требованиям.
Примените управление доступом на основе владения
Вы можете ограничить доступ таким образом, чтобы только тот пользователь, который создал объект, мог получить к нему доступ. Чтобы это сделать, надо настроить сервис для обеспечения доступа на основе того, кто создал этот объект. Этот вопрос обсуждается более подробно в разделе Управление доступом к сервисам объектов на основе владения.
Редактирование сервисов объектов в ArcMap
Если вы редактируете сервисы объектов в ArcMap, реплицированная копия данных (дочерняя реплика) с сервера создаётся на машине, где установлен ArcMap. Правка вносится в локальную копию и синхронизируется с сервером. Редактор, даты редактирования, автор и даты создания, записываемые на сервер, основаны на пользователе , который вошёл на сайт ArcGIS Server для выполнения синхронизации и даты выполнения редактирования, соответственно.
Отслеживание редактирования и часовые пояса
При работе с сервисом объектов через REST все даты записываются и возвращаются в формате UTC. При включении отслеживания редактирования класса объектов, Esri рекомендует настроить поля данных, использующиеся для записи правок, на использование UTC.
Если вы не можете использовать UTC для полей данных отслеживания редактирования – например, поля используются другим приложением, которое препятствует использованию UTC – укажите временную зону, используемую в базе данных при публикации сервиса объектов.
Области и отслеживание изменений
Область - это строка, которая задаётся для того, чтобы уникально идентифицировать пользователя и то, как будут редактироваться данные (например, @server). Есть два места, где вы можете задать область: в базе геоданных, которая содержит данные и по каждому сервису объектов. Для получения более подробной информации по настройке области в базе геоданных, чтобы идентифицировать аутентифицируемых базой данных пользователей, которые редактируют на настольных клиентах, см. Об отслеживании редакторских правок в данных в справке ArcMap. Вы можете задать область, которая будет присоединена к имени, записанном для пользователя, который выполняет редактирование.
Вы также можете присоединить область по изменениям, выполненным через сервис объектов. При подключении к защищенному сервису объектов, который содержит данные с включенным отслеживанием изменений, ArcGIS Server применяет ваше имя пользователя к любым сделанным вами правкам. ArcGIS Server также добавляет любой домен, который вы настроили в сервисе объектов.
Например, рассмотрим случай, когда пользователь Мария входит в ArcGIS Server и добавляет новый объект. В качестве создателя объекта в базе геоданных будет записано Mary. Если вы настроите в сервисе объектов домен @сервер, последующие изменения будут записаны в базе данных под именем Mary@сервер.
Чтобы помочь вам отслеживать изменения, вносимые в сервис объектов, выполните приведенные ниже шаги ArcGIS Server Manager или шаги ArcMap для установки области на сервис объектов:
Установка области сервиса объектов в ArcGIS Server Manager
- Откройте ArcGIS Server Manager и выполните вход. Справка по этому шагу приведена в разделе Вход в Менеджер.
- Выберите Сервисы > Управление сервисами.
- В модуле Сервисы щелкните имя сервиса объектов. Если сервис не показан в списке, он может находиться в папке корневой директории Site.
- Щёлкните Возможности в модуле Редактировать.
- Щелкните Доступ к объекту (будьте осторожны и не снимайте отметку).
- В разделе Свойства нажмите кнопку Дополнительные параметры.
- Выберите Указывать имя пользователя с уточнителем при применении правок.
- Выберите домен по умолчанию или укажите собственный.
- Щелкните OK.
Установите область сервиса объектов в ArcMap
- В дереве окна Каталог разверните папку ГИС-серверы.
- Дважды щелкните на административном подключении к сайту ArcGIS Server Если вам надо создать административное подключение, см. Создание административного подключения к ArcGIS Server в ArcMap для получения инструкций.
- Щелкните правой кнопкой мыши картографический сервис, связанный с сервисом объектов, и выберите Свойства сервиса.
- Щёлкните вкладку Доступ к объектам в диалоговом окне Редактор сервиса.
- Щелкните Дополнительные опции.
- В окне Расширенные параметры сервиса объектов выберите Добавить уточнитель к имени пользователя при применении правок.
- Выберите домен по умолчанию или укажите собственный.
- Щелкните OK.
Если сервер обнаружит, что имя вошедшего пользователя уже включает в себя домен, то он не будет добавлять к имени пользователя свой домен.
Использование интегрированной модели безопасности
Можно связать пользователей между базой данных и доменами сервера. Вы можете сделать это, если пользователям необходимо вносить изменения непосредственно в базу геоданных в ArcGIS Desktop, а также через Интернет с помощью Сервиса объектов. Вам может понадобиться вести журнал действий одного и того же пользователя в обеих средах. Рабочий процесс для достижения этой цели заключается в следующем:
- Настройте учетные записи с совпадающими логинами в базе геоданных и ArcGIS Server.
- Настройте базу данных и сервер так, чтобы они использовали одинаковый домен или не использовали его вообще.