соединитель данных ServiceNow

Чтобы настроить интеграцию с ServiceNow CMDB, необходимо указать имя хоста экземпляра ServiceNow и действительные учетные данные. Соединитель поддерживает обычную проверку подлинности и OAuth 2.0 в качестве параметров проверки подлинности для доступа только для чтения. Для обычной проверки подлинности требуется имя пользователя и пароль, а OAuth 2.0 основан на предоставлении учетных данных клиента.

Примечание.

Соединитель ServiceNow поддерживает обычную проверку подлинности и OAuth 2.0 (предоставление учетных данных клиента). Мы рекомендуем создать отдельную учетную запись пользователя для работы с коннекторами данных в Exposure Management с назначением роли с минимальными привилегиями (cmdb_read).

Настройка ServiceNow с помощью обычной проверки подлинности

  1. Найдите имя хоста вашего экземпляра ServiceNow. Например, "contoso.service-now.com".  
  2. Создайте нового пользователя ServiceNow:
    1. Выполните [следующие действия] (https://docs.servicenow.com/en-US/bundle/vancouver-platform-administration/page/administer/users-and-groups/task/t_CreateAUser.html), чтобы создать нового пользователя.
    2. Сохраните имя пользователя (идентификатор пользователя) и пароль , указанные для использования в будущем.
    3. Если поле пароля отсутствует, отправьте форму, чтобы создать пользователя. После этого при выборе нового пользователя вы получите параметр Задать пароль .
    4. При создании пользователя установите флажок Только доступ к веб-службе, чтобы эта учетная запись использовалась исключительно для данной интеграции.
  3. Назначьте роль cmdb_read созданному пользователю. Ознакомьтесь с этими подробными инструкциями.

Настройка проверки подлинности OAuth 2.0 (поток учетных данных клиента)

Используйте учетные данные клиента OAuth 2.0, чтобы избежать хранения долгосрочного пароля и обеспечить соответствие современным стандартам проверки подлинности.

Предварительные условия

  1. Создайте (или определите) пользователя ServiceNow с ролью cmdb_read как минимум. Подробные инструкции по созданию пользователя ServiceNow и назначению ролей см. в разделе Настройка ServiceNow с помощью обычной проверки подлинности. Рекомендуется использовать выделенного пользователя интеграции; Администратор требуется временно, только если это необходимо для установки подключаемых модулей.
  2. Убедитесь, что эти плагины установлены (перейдите в sys_plugins.list):
    • OAuth 2.0 (com.snc.platform.security.oauth)
    • Поставщик REST API (com.glide.rest)
    • Область аутентификации (com.glide.auth.scope)
    • Плагин области авторизации REST API (com.glide.rest.auth.scope)
  3. Включите предоставление учетных данных клиента:
    • Перейдите на сайт sys_properties.list
    • Имя свойства: glide.oauth.inbound.client.credential.grant_type.enabled
    • Значение: true
    • Это свойство переключает поддержку потока учетных данных клиента.

Создание клиента OAuth (реестр приложений)

  1. Перейдите в раздел System OAuth > Application Registry.
  2. Выберите: создать конечную точку API OAuth для внешних клиентов.
  3. Заполните обязательные поля (Имя и т. д.). Оставьте URL-адрес перенаправления и URL-адрес входа пустыми (не используется для учетных данных клиента).
  4. Убедитесь, что флажок «Публичный клиент» снят (клиент должен быть конфиденциальным).
  5. Сохраните запись.
  6. В представлении списка Реестры приложений настройте представление (значок шестеренки), чтобы добавить столбец "Пользователь приложения OAuth".
  7. Укажите в качестве пользователя OAuth-приложения специального пользователя интеграции (токен использует роли этого пользователя).
  8. Откройте запись, чтобы скопировать идентификатор клиента и создать/просмотреть секрет клиента.

Сведения о конечной точке токена и гранте

  • Формат URL-адреса маркера: https://<your-instance>.service-now.com/oauth_token.do
  • Тип предоставления: client_credentials
  • Не используется код перенаправления или авторизации.
  • Области: обычно не требуется; Доступ определяется ролями пользователя приложения OAuth.
  • Требуемая роль для пользователя интеграции: cmdb_read (а также все дополнительные роли, необходимые для определенного доступа к CI, если применимо).

Отличия от обычной проверки подлинности

  • Учетные данные легко сменяются (повторно создайте секрет клиента без изменения пароля пользователя интеграции).
  • Проверка подлинности ограничена ролями пользователя приложения OAuth.
  • Ограничения скорости и область данных не изменяются. Убедитесь, что выделенный пользователь не будет конфликтовать с API.
  • Url-адреса интерактивного входа или перенаправления не требуются.

Устранение неполадок OAuth

Проблема Действие
401 Не авторизовано Убедитесь, что идентификатор и секрет клиента указаны верно; убедитесь, что пользователь приложения OAuth указан; убедитесь, что назначена роль cmdb_read; убедитесь, что свойство glide.oauth.inbound.client.credential.grant_type.enabled = true задано.
403 (доступ запрещен) У пользователя отсутствует требуемая роль на чтение CMDB; добавьте cmdb_read.
Недопустимый клиент Повторно создайте секрет клиента; убедитесь, что вы использовали "OAuth API endpoint for external clients".
Сбой конечной точки токена Проверьте установленные плагины; подтвердите правильность имени хоста экземпляра.
Пустые или отсутствующие данные CMDB Проверьте, что пользователь интеграции может напрямую просматривать CI в CMDB; проверьте роли.

Дополнительные сведения о ServiceNow OAuth см. в документации по ServiceNow.

Установка подключения ServiceNow в управлении экспозицией

Чтобы установить соединение с ServiceNow в управлении экспозицией, выполните следующие действия.

  1. Откройте соединители данных в навигации "Управление экспозицией" и выберите Подключить на плитке ServiceNow CMDB.
  2. Выберите метод проверки подлинности и введите необходимые сведения:
    • В поле Обычная проверка подлинности введите имя узла экземпляра ServiceNow, а также имя пользователя и пароль, созданные в конфигурации обычной проверки подлинности.
    • Для OAuth 2.0: выберите параметр проверки подлинности OAuth 2.0 и введите имя узла экземпляра, идентификатор клиента и секрет клиента, созданные в конфигурации OAuth.
  3. Нажмите Подключиться. Система выполнит проверку подлинности с помощью выбранного метода и получите данные CMDB.

Снимок экрана: подключение соединителя ServiceNow

Полученные данные

В настоящее время Exposure Management получает данные об устройствах, их связи с бизнес-приложениями и критичности для бизнеса. Также извлекаются дополнительные данные, помогающие идентифицировать устройство, например сведения о сетевом адаптере и данные ОС.

Следующие поля загружаются через коннектор:

Категория Свойства
Устройства -Os
— osVersion
— osServicePack
— cpuType
- категория
— assetTag
- виртуальный
— serviceNowCriticality
— usedFor
— networkAdapters (см. подробные сведения ниже)
— lastLoggedOnUser
- наиболее частый пользователь
— sysClassName
- uPrimaryBusinessApplication (см. подробные сведения ниже)
Сетевой адаптер -Имя
— sysId
- macAddress
-Ipaddress
- ipDefaultGateway
Бизнес-приложение — sysId
-Номер
— uCriticality
- критичность для бизнеса

Устранение неполадок соединителя

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

Тип ошибки Действие по устранению неполадок
Сообщение об ошибке "Не удалось устранить имя удаленного сервера" Проверьте имя узла экземпляра ServiceNow. Дополнительные сведения о проверке подлинности для ServiceNow см. здесь: Проверка подлинности (servicenow.com)
Код ошибки 401: сбой авторизации Сбой авторизации указывает на то, что учетные данные могут быть неправильными или недостаточно разрешений для доступа к ServiceNow данным. Проверьте свои учетные данные и убедитесь, что они правильные и допустимые. Также проверьте, что у ваших учетных данных есть необходимые разрешения. Дополнительные сведения о назначении роли cmdb_read см. в разделе Настройка ServiceNow с помощью обычной проверки подлинности. Другой возможной причиной этого сбоя является то, что экземпляр ServiceNow настроен для приема подключений только из ограниченного диапазона IP-адресов. В этом случае рекомендации по добавлению правильного набора IP-адресов в список разрешенных см. здесь: СПИСОК IP-адресов.
Код ошибки 403: Ошибка запрета доступа Эта ошибка указывает, что предоставленные учетные данные не имеют необходимых разрешений для запуска запрошенных API. Обновите учетные данные, предоставив им необходимые права, как описано в разделе Настройка ServiceNow с базовой аутентификацией, и убедитесь, что им как минимум назначена роль cmdb_read.
Код ошибки 404: Ошибка "Не найден" Эта ошибка указывает, что запрошенная конечная точка не была найдена доступной. Убедитесь, что имя хоста экземпляра ServiceNow указано правильно.
Код ошибки 429 "Слишком много запросов" Система периодически извлекает данные от настроенных внешних поставщиков, которые могут иметь ограничение на количество одновременных запросов. Рекомендуется создать выделенного пользователя или учетную запись для соединителя, чтобы избежать достижения этого ограничения.
Сообщение об ошибке некорректного URL-адреса Эта ошибка указывает, что запрошенная конечная точка не была найдена доступной. Убедитесь, что имя хоста экземпляра ServiceNow указано правильно.
Ошибка "Временное отключение" или "Временный сбой" Если это сообщение об ошибке появляется без дополнительных сведений, проверьте конфигурацию соединителя (имя узла и учетные данные). Если они допустимы и проблема не решается самостоятельно, обратитесь в службу поддержки.
Не отображаются некоторые CI CMDB ServiceNow или активы в загруженных данных Описание данных, которые должны быть получены соединителем CMDB ServiceNow, см. в разделе Извлеченные данные. Если данные по-прежнему отсутствуют, обратитесь в службу поддержки.
Не отображаются никакие данные, загруженные из ServiceNow CMDB Проверьте состояние подключения, чтобы убедиться в отсутствии ошибок. Убедитесь, что в ServiceNow CMDB есть допустимые записи, которые соответствуют данным, которые мы извлекаем. Запустите пример запроса Advanced Hunting, чтобы проверить, можно ли найти какие-либо ресурсы ServiceNow в таблицах Exposure Graph. Если вам по-прежнему не удается найти данные ServiceNow CMDB, обратитесь в службу поддержки.
Необходимо настроить разрешенные IP-адреса ServiceNow, чтобы соединители Exposure Management могли получить доступ к ServiceNow Сведения о том, как добавить набор IP-адресов для добавления в список разрешенных, см. здесь: Список IP-адресов.

Дальнейшие действия

После настройки соединителя данных ServiceNow: