Видимость в организациях
Видимость используется в качестве формы управления доступом. Если сущность является видимой для участников подразделения организации, этим участникам предоставлен доступ для чтения данной сущности. Базовая детализированная модель безопасности определяет конкретное взаимодействие, которое разрешено любым пользователям, принадлежащим к этому подразделению, с конкретным активом. Если пользователю в системе не предоставлена видимость, этот актив не существует в домене данного пользователя. Этот пользователь не может видеть данный актив, использовать его в перечислении или опрашивать пространство имен данного актива.
В ThingWorx можно определить правила видимости, позволяющие сделать конкретные вещи видимыми только для одной организации или сделать один и тот же актив видимым для нескольких организаций. Организация состоит из подразделений.
Видимость по умолчанию
По умолчанию неадминистративным пользователям предоставляется видимость только для сущностей, созданных ими.
Предоставление видимости
Чтобы предоставить неадминистративным пользователям разрешения видимости для сущностей, создайте организацию или подразделение, куда будут включены нужные пользователи. После создания организации необходимо предоставить организации или подразделению разрешения видимости.
Это может быть сделано на следующих уровнях:
Уровень набора, для которого настройки видимости применяются ко всем элементам набора.
Уровень отдельной сущности (например: торговый автомобиль VM101).
Уровень экземпляра (применимо только к шаблонам вещей). Настройки видимости экземпляра остаются неизменными для любой вещи, созданной на основе этого шаблона вещи.
Можно добавить видимость, используя интерфейс пользователя или сервисы интерфейса REST API (за исключением набора ThingPackages, как будет описано в следующем разделе).
Видимость для актива, предоставленная на более низких уровнях иерархии организации, автоматически предоставляется на более высоких уровнях. Например, если оператору линии предоставлена видимость своей линии, супервизору всех линий в иерархии организации автоматически предоставляется видимость активов, для которых предоставлена видимость подчиненному оператору.
Существует одно исключение для модели перехода на более высокий уровень: предоставление видимости актива для целой организации. При добавлении целой организации этой организации и всем ее подразделениям назначается видимость для этой сущности.
Предоставление видимости для подразделения организации
В приведенном ниже примере создается новая организация с соответствующими подразделениями и пользователями. Затем видимость применяется к подразделению.
1. Создание новой организации. В этом примере она называется J W Power Company Fleet. Щелкните Сохранить.
2. Щелкните вид Организация. Наименование корневого уровня по умолчанию - Unit 1. Добавьте пользователей в это подразделение, поскольку их невозможно добавить вне пределов подразделения организации.
3. Переименуйте Unit 1. В этом примере используется наименование RootLevelDefault.
4. Создайте дочернее подразделение для RootLevelDefault. В этом примере оно названо SubLevel.
5. Назначьте видимость для RootLevelDefault.
* 
Если в этом примере назначить видимость для организации J W Power Company Fleet, то вся организация получит разрешения видимости (аналогично разрешению уровня набора). На рисунке ниже показаны обе возможности. Первая строка показывает, что у всей организации есть разрешения видимости. Вторая строка показывает, что у подразделения есть разрешения видимости.
Предоставление видимости для набора ThingPackages
Видимость для набора ThingPackages может быть предоставлена только с помощью REST API. Соответствующей опции интерфейса пользователя не существует.
Используйте сервис AddCollectionVisibilityPermissions из ресурса CollectionFunctions. Входные параметры определяют участника, которому нужно предоставить видимость.
Например, чтобы предоставить видимость организации Everyone, следует использовать следующие входные параметры: principal = Everyone, principalType = Organization и collectionName = ThingPackages.
По умолчанию для вещи, которая реализует шаблон вещи базы данных, только администраторы могут создавать сервисы запросов SQL и команд SQL. Для набора ThingPackages должны быть предоставлены дополнительные разрешения, чтобы пользователи, не являющиеся администраторами, могли выполнять эту функцию. Чтобы предоставить такие разрешения, выполните следующие шаги.
1. В Composer перейдите в раздел Система > Ресурсы.
2. Выберите ресурс CollectionFunctions.
3. Выберите Сервисы.
4. Выберите сервис AddCollectionRunTimePermission.
5. Выполните сервис со следующими параметрами:
collectionName - ThingPackages
type - ServiceInvoke
resource - * или конкретный
principal - имя пользователя или группы
principalType - пользователь или группа
Allow - True
Конфигурирование видимости для актива
Перед конфигурированием организации необходимо определить пользователей и группы.
1. В проводнике откройте вещь или сущность.
2. Щелкните Разрешения.
3. В разделе Видимость выберите соответствующую организацию.
4. Щелкните Сохранить.
* 
Чтобы удалить подразделение из организации, щелкните значок удаления рядом с подразделением.
Чтобы удалить разрешение видимости, выберите организацию, установите флажок и щелкните Удалить.
Наборы разрешений времени выполнения и времени конструирования также доступны в верхней части страницы, где выполняется управление разрешениями видимости.
Конфигурирование видимости экземпляра
Видимость экземпляра применяется только к шаблонам вещей, и видимость, заданная на этом уровне, наследуется любыми сущностями, использующими этот шаблон вещи.
1. В проводнике откройте раздел "Шаблоны вещей".
2. Найдите и выберите нужный шаблон.
3. Щелкните Разрешения в строке меню.
4. В разделе Видимость щелкните Искать организации.
5. Щелкните магическое средство выбора и выберите соответствующую организацию.
6. Щелкните Сохранить.
Было ли это полезно?