Сервис объектов имеет несколько уровней прав доступа, а также возможности отслеживания редактирования, что позволяет создавать приложения для совместного редактирования.
- Редакторские права доступа (Editor permissions) разрешают пользователям добавлять, удалять или изменять пространственные объекты в сервисе. Например, можно дать возможность редакторам добавлять объекты, но запретить их изменение или удаление.
- Функции отслеживания редактирования (Editor tracking) регистрируют имя пользователя, создавшего или изменившего объект, а также дату и время этого события. Эта функция может быть полезна, если требуется отчетность по редакторской правке. Дополнительная функция отслеживания истории (history tracking) регистрирует информацию об изменении объектов со временем, позволяя производить откат этих изменений. Эта функциональная возможность может использоваться только для многопользовательских баз геоданных, не для баз данных.
- Функция управления доступом на основе собственности (Ownership-based access control) позволяет ограничить доступ к объектам в зависимости от того, кто их создал. Например, можно позволить пользователям создавать и редактировать свои собственные данные, тогда как к чужим данным можно лишь производить запросы. Эта функциональная возможность может использоваться только для многопользовательских баз геоданных, не для баз данных.
Вышеперечисленные функции используют маркеры доступа (token) для регистрации и проверки имени пользователя. Разработчик может создать форму обязательного ввода данных учетной записи перед использованием приложения. Затем эти данные используются для получения маркера доступа (token) от ArcGIS Server. Маркер доступа содержит в себе зашифрованную информацию о пользователе и разрешает работу с объектами в сервисе согласно уровню доступа данного пользователя.
При разработке сервиса и сопутствующих приложений можно использовать любые (или все) из вышеперечисленных функций. Рассмотрим веб-приложение, позволяющее пользователям сообщать о преступлениях. Отслеживание редактирования позволяет узнать, кто и когда сообщил о преступлениях. Управление доступом на основе собственности позволяет убедиться в том, что преступление, сообщенное одним гражданином, не может быть удалено другим (в частности, преступником). Наконец, можно отключить возможность изменять уже произошедшие преступления, разрешив только добавление и удаление.
Сценарии применения прав доступа и отслеживания редактирования
Ниже приведены несколько дополнительных сценариев применения в приложении редакторских прав, отслеживания редактирования и управления доступом на основе собственности. Эти примеры помогут вам выбрать наилучшую комбинацию этих свойств для сервиса объектов, исходя из предназначения вашего приложения.
Только добровольные пользователи
В таком типе веб-приложения вся редакторская правка выполняется анонимными добровольцами. Примером является веб-приложение, позволяющее людям отмечать на карте свое текущее местонахождение. При таком сценарии сервис следует снабдить только операциями запроса и создания. Поскольку объекты не могут быть изменены, нет необходимости отслеживать пользователей, создавших данные. Отслеживание редактирования и истории также не требуется. При необходимости администратор может открыть набор данных в приложении ArcGIS Desktop и удалить ненужные объекты.
Только авторизованные пользователи
В таком типе приложения все пользователи могут редактировать любые данные, но все изменения отслеживаются. Примером является приложение, позволяющее жителям совместно составлять перечень деревьев в городе, в цифровом виде. Добавление, изменение или удаление любого дерева из базы данных производится добровольно, но для редактирования необходима авторизация.
В таком приложении пользователи могут запрашивать историю любого объекта, просматривая, кто и когда его изменял. При необходимости администратор может произвести откат изменений. Для каждого объекта последний редактировавший его пользователь регистрируется в базе данных.
Авторизованные и добровольные пользователи
В приложениях, разрабатываемых как для авторизованных, так и для добровольных пользователей, можно применять несколько сервисов объектов. Рассмотрим команду биологов, изучающих дикую природу какого-либо национального парка. Каждый из них несет ответственность за свою область работ, но им необходимо сотрудничество для комплексного анализа и публикации данных, касающихся всего парка. Также им требуются фотографии, видеозаписи и комментарии посетителей парка.
Для такого сочетания данных можно использовать два сервиса – сервис объектов ареалов, доступный для редактирования только биологам, и сервис объектов мест наблюдений, доступный для редактирования всем желающим. Кроме того, при разработке такого приложения можно достичь следующего результата: авторизованные биологи будут видеть оба сервиса объектов, а анонимные пользователи – только сервис объектов мест наблюдений, вероятно, с недоступным для редактирования изображением ареалов дикой природы, отображенным картографическим сервисом.