Поделиться через


Руководство: Автоматическое создание билетов ServiceNow с помощью интеграции управления правами доступа в Microsoft Entra

Сценарий: В этом сценарии вы узнаете, как использовать настраиваемую расширяемость и Logic App для автоматического создания заявок ServiceNow для пользователей, которые получили назначения и нуждаются в доступе к приложениям.

В этом учебнике вы узнаете следующее:

  • Добавление рабочего процесса Logic App в существующий каталог.
  • Добавление настраиваемого расширения в политику существующего пакета доступа.
  • Регистрация приложения в идентификаторе Microsoft Entra для возобновления рабочего процесса управления правами
  • Настройка ServiceNow для автоматизированной аутентификации.
  • Запрос доступа к пакету доступа в качестве конечного пользователя.
  • Получение доступа к запрошенном пакету доступа в качестве конечного пользователя.

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

Примечание.

При выполнении этих действий рекомендуется использовать роль с минимальными привилегиями.

Добавление рабочего процесса логического приложения в существующий каталог для управления доступом

Чтобы добавить рабочий процесс приложения логики в существующий каталог, используйте шаблон ARM для создания приложения логики:

Развертывание в Azure .

снимок экрана шаблона ARM логического приложения.

Укажите сведения о группе ресурсов и идентификатор каталога, с которым необходимо связать приложение Logic App, затем выберите покупку. Дополнительные сведения о создании нового каталога см. в статье "Создание и управление каталогом ресурсов в управлении правами".

После создания каталога необходимо добавить рабочий процесс Logic App с помощью следующих шагов.

  1. Войдите в Центр администрирования Microsoft Entra по крайней мере в роли администратора управления удостоверениями.

    Совет

    Другие роли с минимальными привилегиями, которые могут выполнить эту задачу, включают владельца каталога и владельца группы ресурсов.

  2. В меню слева выберите элемент Каталоги.

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

  4. На панели навигации по заголовкам выберите Добавить настраиваемое расширение.

  5. На вкладке "Основные сведения" введите имя настраиваемого расширения и описание рабочего процесса. Эти поля отображаются на вкладке "Настраиваемые расширения" каталога. Снимок экрана: создание настраиваемого расширения для управления правами.

  6. Выберите тип расширения как "Рабочий процесс запроса", чтобы соответствовать этапу политики создаваемого пакета доступа. Снимок экрана: вкладка действий пользовательского расширения для управления правами.

  7. Нажмите кнопку "Запуск и ожидание " в конфигурации расширения, которая приостанавливает связанное действие пакета доступа до тех пор, пока приложение логики, связанное с расширением, завершит свою задачу, и администратор отправляет действие возобновления, чтобы продолжить процесс. Дополнительные сведения об этом процессе см. в статье о настройке пользовательских расширений, которые приостанавливают процессы управления правами.

  8. На вкладке сведений выберите "Нет" в поле "Создание приложения логики", так как приложение логики уже создано на предыдущих шагах. Однако необходимо указать сведения о подписке и группе ресурсов Azure вместе с именем логического приложения. Снимок экрана: вкладка сведений о пользовательском расширении управления правами.

  9. В Просмотр и создание просмотрите сводку пользовательского расширения и убедитесь, что сведения о вызове Логического приложения верны. Затем выберите Создать.

  10. После создания Logic App можно будет получить доступ к нему рядом с пользовательским расширением на странице настраиваемых расширений. Вы можете вызвать эту функцию в политиках пакетов доступа. Снимок экрана: список настраиваемых расширений.

Совет

Дополнительные сведения о пользовательских функциях расширения, которые приостанавливают процессы управления правами, см. в статье "Настройка настраиваемых расширений, которые приостанавливают процессы управления правами".

Добавление настраиваемого расширения в политику в существующем пакете доступа

После настройки пользовательской расширяемости в каталоге администраторы могут создать пакет доступа с политикой, чтобы активировать настраиваемое расширение при утверждении запроса. Это позволяет им определять конкретные требования к доступу и настраивать процесс проверки доступа в соответствии с потребностями организации.

  1. На портале управления удостоверениями, будучи как минимум администратором управления удостоверениями, выберите Access пакеты.

    Совет

    Другие роли с минимальными привилегиями, которые могут выполнить эту задачу, включают владельца каталога и диспетчер пакетов Access.

  2. Выберите пакет для доступа, в который нужно добавить настраиваемое расширение (приложение логики), из списка уже созданных пакетов для доступа.

  3. Перейдите на вкладку политики, выберите политику и нажмите кнопку "Изменить".

  4. В параметрах политики перейдите на вкладку "Пользовательские расширения ".

  5. В меню под пунктом Этап выберите событие пакета доступа, которое следует использовать в качестве триггера для этого настраиваемого расширения (Logic App). Чтобы активировать рабочий процесс Logic App пользовательского расширения при утверждении пакета доступа, выберите Запрос утвержден.

    Примечание.

    Чтобы создать заявку в ServiceNow для назначения с истекшим сроком действия, которому были предоставлены права ранее, добавьте новый этап «Назначение удалено», а затем выберите LogicApp.

  6. В меню под "Настраиваемое расширение" выберите пользовательское расширение (Logic App), созданное на основании вышеуказанных шагов, для добавления в этот пакет доступа. Выбранное действие выполняется, когда происходит событие, выбранное в поле when.

  7. Чтобы добавить это в политику существующего пакета доступа, выберите Обновить. Снимок экрана: сведения о пользовательском расширении для пакета доступа.

Примечание.

Щелкните Новый пакет доступа, если вы предпочитаете создать новый пакет. Дополнительные сведения о создании пакета доступа см. в статье "Создание нового пакета доступа в управлении правами". Дополнительные сведения об изменении существующего пакета доступа см. в статье "Изменение параметров запроса для пакета доступа" в службе управления правами Microsoft Entra.

Регистрация приложения с секретами в Центре администрирования Microsoft Entra

С помощью Azure вы можете использовать Azure Key Vault для хранения секретов приложений, таких как пароли. Чтобы зарегистрировать приложение с секретами в Центре администрирования Microsoft Entra, выполните следующие действия.

  1. Войдите в Центр администрирования Microsoft Entra по крайней мере в роли администратора управления удостоверениями.

  2. Перейдите к Идентификация>Приложения>Регистрация приложений.

  3. В разделе "Управление" выберите Регистрация приложений > Создать регистрацию.

  4. Введите отображаемое имя приложения.

  5. Выберите "Учетные записи только в этом каталоге организации" в поддерживаемом типе учетной записи.

  6. Выберите Зарегистрировать.

После регистрации приложения необходимо добавить секрет клиента, выполнив следующие действия:

  1. Перейдите к Идентификация>Приложения>Регистрация приложений.

  2. выберите приложение.

  3. Выберите сертификаты и секреты > Клиентские секреты > Новый клиентский секрет.

  4. Добавьте описание секрета клиента.

  5. Выберите срок действия секрета или укажите настраиваемое время существования.

  6. Выберите Добавить.

Примечание.

Дополнительные сведения о регистрации приложения см. в кратком руководстве: Быстрый старт: Регистрация приложения на платформе удостоверений Microsoft.

Чтобы авторизовать созданное приложение для вызова API возобновления MS Graph, выполните следующие действия:

  1. Перейдите в Центр администрирования Microsoft Entra Admin Center Identity Governance — Центр администрирования Microsoft Entra

  2. В меню слева выберите элемент Каталоги.

  3. Выберите каталог, для которого вы добавили пользовательское расширение.

  4. Выберите меню "Роли и администраторы" и выберите "+ Добавить диспетчер назначения пакетов доступа".

  5. В диалоговом окне "Выбор участников" найдите приложение, созданное по имени или идентификатору приложения. Выберите приложение и нажмите кнопку "Выбрать".

Совет

Более подробную информацию о делегировании и ролях в официальной документации Майкрософт можно найти здесь: делегирование и роли в управлении правами.

Настройка ServiceNow для автоматизированной аутентификации

На этом этапе пришло время настроить систему ServiceNow для возобновления рабочего процесса управления доступами после закрытия тикета в ServiceNow.

  1. Зарегистрируйте приложение Microsoft Entra в реестре приложений ServiceNow, выполнив следующие действия:
    1. Войдите в ServiceNow и перейдите в реестр приложений.
    2. Выберите "Новый", а затем выберите "Подключение к стороннему провайдеру OAuth".
    3. Укажите имя приложения и выберите "Учетные данные клиента" в типе предоставления по умолчанию.
    4. Введите имя клиента, идентификатор, секрет клиента, URL-адрес авторизации, URL-адрес токена, созданные при регистрации приложения Microsoft Entra в Центре администрирования Microsoft Entra.
    5. Отправьте приложение. Снимок экрана: реестр приложений в ServiceNow.
  2. Создайте сообщение REST API системной веб-службы, выполнив следующие действия.
    1. Перейдите в раздел "Сообщения REST API" в разделе "Системные веб-службы".

    2. Нажмите кнопку "Создать", чтобы создать сообщение REST API.

    3. Заполните все обязательные поля, включая предоставление URL-адреса конечной точки: https://learn.microsoft.com/en-us/graph/api/accesspackageassignmentrequest-resume?view=graph-rest-1.0&tabs=http

    4. Для проверки подлинности выберите OAuth2.0 и выберите профиль OAuth, созданный во время регистрации приложения.

    5. Нажмите кнопку "Отправить", чтобы сохранить изменения.

    6. Вернитесь к разделу "Сообщения REST API" в разделе "Системные веб-службы".

    7. Выберите http-запрос и нажмите кнопку "Создать". Введите имя и выберите "POST" в качестве метода Http.

    8. В http-запросе добавьте содержимое для параметров http-запроса с помощью следующей схемы API:

      {
      "data": {
          "@odata.type": "#microsoft.graph.accessPackageAssignmentRequestCallbackData",
          "customExtensionStageInstanceDetail": "Resuming-Assignment for user",
          "customExtensionStageInstanceId": "${StageInstanceId}",
          "stage": "${Stage}"
                },
                "source": "ServiceNow",
                  "type": "microsoft.graph.accessPackageCustomExtensionStage.${Stage}"
                  }
      
    9. Нажмите кнопку "Отправить", чтобы сохранить изменения. Снимок экрана: выбор возобновления звонка, в ServiceNow.

      снимок экрана http-запроса в ServiceNow.

  3. Измените схему таблицы запроса: чтобы изменить схему таблицы запроса, внесите изменения в три таблицы, показанные на следующем рисунке: снимок экрана схемы таблицы запросов в ServiceNow. Добавить четыре метки колонок и задать тип как строка.
    • ИдентификаторЗапросаНазначенияПакетаДоступа
    • AccessPackageAssignmentStage
    • StageInstanceId
    • EntraUserObjectId
  4. Чтобы автоматизировать рабочий процесс с помощью конструктора потоков, сделайте следующее:
    1. Войдите в ServiceNow и перейдите в конструктор потоков.
    2. Нажмите кнопку "Создать" и создайте новое действие.
    3. Добавьте действие для вызова сообщения REST API системной веб-службы, созданного на предыдущем шаге. Снимок экрана: скрипт конструктора потоков для возобновления процесса управления правами в ServiceNow. Скрипт действия: (обновите скрипт с помощью меток столбцов, созданных на предыдущем шаге):
      (function execute(inputs, outputs) {
          gs.info("AccessPackageAssignmentRequestId: " + inputs['accesspkgassignmentrequestid']);
          gs.info("StageInstanceId: " + inputs['customextensionstageinstanceid'] );
          gs.info("Stage: " + inputs['assignmentstage']);
          var r = new sn_ws.RESTMessageV2('Resume ELM WorkFlow', 'RESUME');
          r.setStringParameterNoEscape('AccessPackageAssignmentRequestId', inputs['accesspkgassignmentrequestid']);
          r.setStringParameterNoEscape('StageInstanceId', inputs['customextensionstageinstanceid'] );
          r.setStringParameterNoEscape('Stage', inputs['assignmentstage']);
          var response = r.execute();
          var responseBody = response.getBody();
          var httpStatus = response.getStatusCode();
          var requestBody =  r.getRequestBody();
          gs.info("requestBody: " + requestBody);
          gs.info("responseBody: " + responseBody);
          gs.info("httpStatus: " + httpStatus);
          })(inputs, outputs); 
      
    4. Сохранить действие
    5. Нажмите кнопку "Создать", чтобы создать новый поток.
    6. Введите имя потока, выберите "Запуск от имени "Системный пользователь" и выберите "Отправить".
  5. Чтобы создать триггеры в ServiceNow, выполните следующие действия:
    1. Выберите "Добавить триггер", а затем выберите "обновленный" триггер и запустите триггер для каждого обновления.
    2. Добавьте условие фильтра, изменив его, как показано на изображении: Снимок экрана API управления правами доступа на вызовы в ServiceNow
    3. Нажмите кнопку Готово.
    4. Выберите, чтобы добавить действие Снимок экрана триггера схемы потоков.
    5. Выберите действие и выберите действие, созданное на предыдущем шаге. Снимок экрана: выбор действий конструктора потоков.
    6. Перетащите только что созданные столбцы из записи запроса в соответствующие параметры действия.
    7. Выберите "Готово", "Сохранить" и "Активировать". Снимок экрана: сохранение и активация в конструкторе потоков.

Запрос доступа к пакету доступа в качестве конечного пользователя

Когда конечный пользователь запрашивает доступ к пакету доступа, запрос отправляется соответствующему утверждающему. Когда утверждающий предоставит утверждение, Управление правами доступа вызывает логическое приложение. Затем приложение логики вызывает ServiceNow для создания нового запроса или сообщения, и Управление правами доступа ожидает обратного вызова из ServiceNow.

Снимок экрана: запрос пакета доступа.

Получение доступа к запрошенном пакету доступа в качестве конечного пользователя

Команда IT поддержки работает над предыдущей заявкой, созданной для внесения необходимых изменений, и закрывает заявку ServiceNow. При закрытии заявки ServiceNow выполняет вызов для возобновления рабочего процесса управления правами доступа. После завершения запроса запрашивающий получает уведомление от управления доступом о выполнении запроса. Этот упрощенный рабочий процесс гарантирует, что запросы на доступ выполняются эффективно, и пользователи быстро уведомляются.

Снимок экрана: журнал запросов на доступ.

Примечание.

Конечный пользователь увидит сообщение "Сбой назначения" на портале MyAccess, если билет не закрыт в течение 14 дней.

Следующие шаги

Перейдите к следующей статье, чтобы узнать, как создать...