Активация Logic Apps с пользовательскими расширениями в управлении правами

С помощью Azure Logic Apps можно автоматизировать настраиваемые рабочие процессы, а также подключать приложения и службы в одном расположении. Пользователи могут интегрировать приложения логики с управлением правами, чтобы расширить рабочие процессы управления за пределы основных вариантов использования функции управления правами.

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

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

  • При создании запроса пакета доступа

  • Утверждение запроса пакета доступа

  • При предоставлении назначения пакета доступа

  • При удалении назначения пакета доступа

  • 14 дней до истечения срока действия автоматического назначения пакета доступа

  • За день до истечения срока действия автоматического назначения пакета доступа

Эти триггеры в Logic Apps управляются на вкладке в политиках пакетов доступа с именем "Правила". Кроме того, вкладка "Пользовательские расширения" на странице каталога отображает все добавленные расширения Logic Apps для данного каталога. В этой статье описывается создание приложений логики и их добавление в каталоги и пакеты для доступа в управлении правами.

Требования к лицензиям

Для использования этой функции требуются лицензии Управление идентификацией Microsoft Entra. Чтобы найти подходящую лицензию для ваших требований, см. Управление идентификацией Microsoft Entra основы лицензирования.

Создание и добавление рабочего процесса приложения логики в каталог для использования в управлении правами

Совет

Действия, описанные в этой статье, могут немного отличаться на портале, с который вы начинаете работу.

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

    Совет

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

  2. Перейдите к каталогам управления>удостоверениями.

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

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

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

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

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

  7. Рабочий процесс предварительного окончания срока действия поддерживает этапы политики: 14 дней до истечения срока действия назначения пакета доступа и 1 день до истечения срока действия назначения пакета. Этот тип расширения не поддерживает запуск и ожидание.

    Снимок экрана: параметры конфигурации запуска и ожидания.

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

  9. На вкладке "Сведения" выберите, хотите ли вы использовать существующее приложение логики плана потребления. При выборе "Да" в поле "Создание приложения логики" (по умолчанию) создается новое пустое приложение логики плана потребления, которое уже связано с этим пользовательским расширением. Независимо от того, необходимо указать следующее:

    1. Подписка Azure.

    2. Группа ресурсов с разрешениями на создание ресурса приложения логики при создании приложения логики.

    3. При использовании этого параметра выберите "Создать приложение логики".

      Снимок экрана: создание фрагментов сведений о приложении логики.

    Примечание.

    При создании приложения логики в этом модальном режиме длина "/subscriptions/{SubscriptionId}/resourceGroups/{RG Name}/providers/Microsoft.Logic/workflows/{Logicapp Name}" не может превышать 150 символов.

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

  11. Это настраиваемое расширение связанного приложения логики теперь отображается на вкладке "Пользовательские расширения" в каталогах. Вы можете вызвать эту функцию в политиках пакетов доступа.

Просмотр и изменение существующих настраиваемых расширений для каталога

  1. Перейдите на вкладку "Пользовательские расширения" в каталоге, как упоминание, как минимум, Администратор istrator управления удостоверениями.

    Совет

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

  2. Здесь можно просмотреть все созданные пользовательские расширения вместе с соответствующим приложением логики и сведениями о пользовательском типе расширения. Снимок экрана: список пользовательских расширений.

  3. Наряду с именем приложения логики тип столбца определяет, было ли создано пользовательское расширение в новой модели проверки подлинности версии 2 (после 17 марта 2023 г.) или исходной модели. Если настраиваемое расширение было создано в новой модели, столбец Type соответствует выбранному типу из модала конфигурации, который является "запрос на назначение" или "предварительный срок действия". Для старых пользовательских расширений в типе отображается "пользовательский пакет доступа".

  4. В столбце "Безопасность маркеров" показана связанная платформа безопасности проверки подлинности, используемая при создании настраиваемого расширения. Новые пользовательские расширения версии 2 отображают "подтверждение владения" (PoP) в качестве типа безопасности токена. Старые пользовательские расширения показывают "обычный".

  5. Устаревшие пользовательские расширения больше не могут создаваться из пользовательского интерфейса, однако существующие можно преобразовать в новые расширения пользовательского стиля из пользовательского интерфейса. Снимок экрана: преобразование старого маркера безопасности в новый.

  6. Выбор трех точек в конце строки старого настраиваемого расширения позволяет быстро обновить пользовательское расширение до нового типа.

    Примечание.

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

  7. Вы также можете изменить любое пользовательское расширение. Это позволяет обновить имя, описание и другие значения полей. Это можно сделать, выбрав "Изменить " в трехточной области для любого настраиваемого расширения.

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

  9. Если не удается обновить старое пользовательское расширение до нового типа, так как оно используется для этапов политики, запроса на назначение и предварительного истечения срока действия, то для обновления его необходимо либо удалить из всех связанных политик, либо убедиться, что он используется только для этапов политики, связанных с типом ONE (запрос назначения, или перед истечением срока действия).  

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

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

    Совет

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

  2. Перейдите к пакету управления правами управления>удостоверениями>.

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

    Примечание.

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

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

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

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

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

  8. Чтобы добавить расширение в существующий пакет для доступа, щелкните Обновить.

    Добавление приложения логики для доступа к пакету

Изменение определения рабочего процесса связанного приложения логики

Для только что созданных logic Apps, связанных с пользовательскими расширениями, эти приложения логики начинаются пустыми. Чтобы создать рабочие процессы в Logic Apps, которые будут активироваться расширением при активации условия политики пакета связанного доступа, необходимо изменить определение рабочего процесса приложения логики в конструкторе приложений логики. Для этого выполните следующие действия.

  1. Перейдите на вкладку "Пользовательские расширения" в каталоге, как упоминание, как минимум, Администратор istrator управления удостоверениями.

    Совет

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

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

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

Дополнительные сведения о создании рабочих процессов приложения логики см . в кратком руководстве. Создание примера рабочего процесса потребления в мультитенантных Azure Logic Apps.

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

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

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

Администратор отвечает за настройку автоматизированного процесса, который может отправлять полезные данные возобновления запроса API обратно в управление правами, после завершения рабочего процесса приложения логики. Чтобы отправить обратно полезные данные запроса на возобновление, следуйте инструкциям в документах API графа. Дополнительные сведения см. в запросе на возобновление.

В частности, если политика пакета доступа включена для вызова пользовательского расширения, а обработка запросов ожидает обратного вызова от клиента, клиент может инициировать действие возобновления. Он выполняется для объекта accessPackageAssignmentRequest, запрос Которого находится в состоянии WaitForCallback.

Запрос резюме можно отправить обратно на следующие этапы:

microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestApproved microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestGranted microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestRemoved

На следующей схеме потока показан выноска управления правами в рабочий процесс Logic Apps: Схема вызова управления правами в рабочий процесс приложений логики.

На схеме потока схемы показана следующая схема:

  1. Пользователь создает пользовательскую конечную точку, способную получать звонок из службы удостоверений
  2. Служба удостоверений выполняет тестовый вызов, чтобы подтвердить, что конечная точка может вызываться службой удостоверений.
  3. Пользователь вызывает API Graph для запроса на добавление пользователя в пакет доступа
  4. Служба удостоверений добавляется в очередь, активируя внутренний рабочий процесс.
  5. Обработка запросов службы управления правами вызывает приложение логики с полезными данными запроса
  6. Рабочий процесс ожидает принятый код
  7. Служба управления правами ожидает возобновления блокировки пользовательского действия.
  8. Клиентская система вызывает API возобновления запроса в службу удостоверений для возобновления обработки запроса.
  9. Служба удостоверений добавляет сообщение о возобновлении запроса в очередь службы управления правами, возобновляя внутренний рабочий процесс.
  10. Служба управления правами возобновляется из заблокированного состояния

Пример полезных данных запроса на возобновление:

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/0e60f18c-b2a0-4887-9da8-da2e30a39d99/resume
Content-Type: application/json

{
  "source": "Contoso.SodCheckProcess",
  "type": "microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated",
  "data": {
    "@odata.type": "microsoft.graph.accessPackageAssignmentRequestCallbackData",
    "stage": "assignmentRequestCreated",
    "customExtensionStageInstanceId": "957d0c50-466b-4840-bb5b-c92cea7141ff",
    "customExtensionStageInstanceDetail": "This user is all verified"
  }
}

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

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

Ниже приведен пример возобновления обработки запроса назначения пакета доступа путем запрета запроса на обратный вызов. Запрос не может быть отклонен на этапе назначенияRequestCreated выноски.

POST https://graph.microsoft.com/beta/identityGovernance/entitlementManagement/accessPackageAssignmentRequests/9e60f18c-b2a0-4887-9da8-da2e30a39d99/resume
Content-Type: application/json

{
  "source": "Contoso.SodCheckProcess",
  "type": "microsoft.graph.accessPackageCustomExtensionStage.assignmentRequestCreated",
  "data": {
    "@odata.type": "microsoft.graph.accessPackageAssignmentRequestCallbackData",
    "stage": "AssignmentRequestCreated",
    "customExtensionStageInstanceId": "857d0c50-466b-4840-bb5b-c92cea7141ff",
    "state": "denied",
    "customExtensionStageInstanceDetail": "Potential risk user based on the SOD check"
  }
}

Взаимодействие с конечным пользователем расширения

Интерфейс утверждающего

Утверждающий видит строку, указанную в полезных данных запроса customExtensionStageInstanceDetail резюме, как показано в полезных данных, расположенных в настройке пользовательских расширений, которые приостанавливают процессы управления правами. Снимок экрана: экран утверждающего.

Интерфейс запрашивателя

Если пакет доступа имеет пользовательское расширение с функциональными возможностями запуска и ожидания, а приложение логики активируется при создании запроса пакета доступа, запрашивающие могут видеть состояние запроса в журнале запросов в MyAccess.

Следующие обновления состояния отображаются пользователям на основе пользовательского этапа расширения:

Этап пользовательского расширения Сообщение, отображаемое для запрашивателя в журнале запросов MyAccess
При обработке расширения Ожидание информации перед продолжением
Если расширение завершается сбоем Истек срок действия процесса
Когда расширение возобновляется Процесс продолжается

Это пример журнала запросов MyAccess из запрашивающего объекта после возобновления расширения:

Снимок экрана: экран запрашивающего элемента.

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

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

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

Например, здесь можно увидеть время отправки запроса, а также время начала процесса запуска и ожидания (ожидание обратного вызова). Запрос был утвержден, и этап управления правами "возобновился", после выполнения приложения логики и возобновления запроса был возвращен в 12:15 вечера.

Кроме того, новая ссылка на экземпляры пользовательского расширения в сведениях запроса отображает сведения о пользовательском расширении, связанном с пакетом доступа для запроса.
Снимок экрана: элементы списка сведений о выборе.

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

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

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