Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Это важно
Начиная с 1 мая 2025 г. Azure AD B2C больше не будет доступен для приобретения для новых клиентов. Дополнительные сведения см. в разделе "Вопросы и ответы".
GitHub Actions позволяет создавать пользовательские рабочие процессы непрерывной интеграции (CI) и непрерывного развертывания (CD) непосредственно в репозитории GitHub. В этой статье описывается, как автоматизировать развертывание настраиваемых политик Azure Active Directory B2C (Azure AD B2C) с помощью GitHub Actions.
Чтобы автоматизировать процесс развертывания пользовательской политики, используйте действие GitHub для развертывания пользовательских политик Azure AD B2C. Это действие GitHub разработано сообществом Azure AD B2C.
Это действие развертывает пользовательские политики Azure AD B2C в клиенте Azure AD B2C с помощью API Microsoft Graph. Если политика еще не существует в вашем арендаторе, она будет создана. В противном случае он будет заменен.
Это важно
Управление пользовательскими политиками Azure AD B2C с помощью Azure Pipelines в настоящее время использует операции предварительной версии, доступные в конечной точке Microsoft Graph API. Использование этих API в рабочих приложениях не поддерживается. Дополнительные сведения см. в справочнике по бета-точке REST API Microsoft Graph.
Предпосылки
- Выполните действия, описанные в статье "Начало работы с настраиваемыми политиками в Active Directory B2C".
- Если вы еще не создали репозиторий GitHub, создайте его.
Выбор папки настраиваемых политик
Репозиторий GitHub может содержать все файлы политики Azure AD B2C и другие ресурсы. В корневом каталоге репозитория создайте или выберите существующую папку, содержащую пользовательские политики.
Например, выберите папку с именем policies. Добавьте файлы пользовательской политики Azure AD B2C в папку политик . Затем зафиксируйте изменения.
Не отправляйте изменения. Это будет выполняться позже после настройки рабочего процесса развертывания.
Регистрация приложения Microsoft Graph
Чтобы разрешить GitHub Action взаимодействовать с API Microsoft Graph, создайте регистрацию приложения в клиенте Azure AD B2C. Если вы еще этого не сделали, зарегистрируйте приложение Microsoft Graph.
Чтобы действие GitHub получило доступ к данным в Microsoft Graph, предоставьте соответствующие разрешения приложения зарегистрированному приложению. Предоставьте разрешение Microsoft Graph>Policy>Policy.ReadWrite.TrustFramework в рамках разрешений API при регистрации приложения.
Создание зашифрованного секрета GitHub
Секреты GitHub — это зашифрованные переменные среды, которые вы создаете в организации, репозитории или окружении репозитория. На этом шаге вы храните секрет приложения для приложения, зарегистрированного ранее на шаге регистрации приложения MS Graph .
Действие GitHub для развертывания пользовательских политик Microsoft Azure AD B2C использует секретный ключ для получения токена доступа, используется для взаимодействия с API Microsoft Graph. Дополнительные сведения см. в разделе "Создание зашифрованных секретов для репозитория".
Чтобы создать секрет GitHub, выполните следующие действия.
- В GitHub перейдите на главную страницу репозитория.
- Под именем репозитория выберите Параметры.
- На левой боковой панели выберите "Секреты".
- Выберите новый секрет репозитория.
- В поле "Имя" введите ClientSecret.
- В поле "Значение" введите секрет приложения, созданный ранее.
- Выберите "Добавить секрет".
Создание рабочего процесса GitHub
Рабочий процесс GitHub — это автоматическая процедура, которую вы добавляете в репозиторий. Рабочие процессы состоят из одного или нескольких заданий и могут быть запланированы или активированы событием. На этом шаге вы создадите рабочий процесс, который развертывает настраиваемую политику.
Чтобы создать рабочий процесс, выполните следующие действия.
В GitHub перейдите на главную страницу репозитория.
В поле имени репозитория выберите Действия.
Если вы еще не настроили рабочий процесс, выберите настроить рабочий процесс самостоятельно. В противном случае выберите новый рабочий процесс.
GitHub предлагает создать файл рабочего процесса с именем
main.ymlв папке.github/workflows. Этот файл содержит сведения о рабочем процессе, включая среду Azure AD B2C и настраиваемые политики для развертывания. В веб-редакторе GitHub добавьте следующий код YAML:on: push env: clientId: 00001111-aaaa-2222-bbbb-3333cccc4444 tenant: your-tenant.onmicrosoft.com jobs: build-and-deploy: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - name: 'Upload TrustFrameworkBase Policy' uses: azure-ad-b2c/deploy-trustframework-policy@v3 with: folder: "./Policies" files: "TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml" tenant: ${{ env.tenant }} clientId: ${{ env.clientId }} clientSecret: ${{ secrets.clientSecret }}Обновите следующие свойства ФАЙЛА YAML:
Секция Имя Ценность envclientIdИдентификатор приложения (клиента), зарегистрированного на шаге регистрации приложения MS Graph . envtenantИмя клиента Azure AD B2C (например, contoso.onmicrosoft.com). withfolderПапка, в которой хранятся файлы пользовательских политик, например ./Policies.withfilesСписок файлов политики с разделителями-запятыми для развертывания, например TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml.Это важно
При запуске агентов и отправке файлов политики убедитесь, что они отправляются в правильном порядке:
- TrustFrameworkBase.xml
- TrustFrameworkLocalization.xml
- TrustFrameworkExtensions.xml
- SignUpOrSignin.xml
- ProfileEdit.xml
- PasswordReset.xml
Выберите Начать фиксацию.
Под полями сообщения коммита укажите, следует ли добавить коммит в текущую ветвь или создать новую ветвь. Выберите "Зафиксировать новый файл" или "Предложить новый файл", чтобы создать пулл-реквест.
Тестирование рабочего процесса
Чтобы протестировать созданный рабочий процесс, отправьте изменения настраиваемой политики. Как только ваше задание начнется, вы сможете увидеть диаграмму хода выполнения и просмотреть действия каждого из шагов на GitHub.
На сайте GitHub перейдите на главную страницу репозитория.
В поле имени репозитория выберите Действия.
На левой боковой панели выберите созданный рабочий процесс.
В разделе "Выполнение рабочего процесса" выберите имя запуска, которое вы хотите просмотреть.
В разделе "Задания " или в графе визуализации выберите задание, которое нужно просмотреть.
Просмотрите результаты каждого шага. На следующем снимке экрана демонстрируется лог шага отправки пользовательской политики.
Опционально: запланируйте рабочий процесс
Рабочий процесс, который вы создали, запускается push-событием. Если вы предпочитаете, вы можете выбрать другое событие, чтобы активировать ваш рабочий процесс, например pull request.
Можно также запланировать выполнение рабочего процесса в определенное время в формате UTC с помощью синтаксиса cron POSIX. Событие расписания позволяет активировать рабочий процесс в запланированное время. Дополнительные сведения см. в разделе Запланированные события.
В следующем примере рабочий процесс активируется каждый день в 5:30 и 17:30 UTC:
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '30 5,17 * * *'
Чтобы изменить рабочий процесс, выполните приведенные действия.
В GitHub перейдите на главную страницу репозитория.
В поле имени репозитория выберите Действия.
На левой боковой панели выберите созданный рабочий процесс.
В разделе "Выполнение рабочего процесса" выберите имя запуска, которое вы хотите просмотреть.
В меню выберите три точки ..., а затем выберите "Просмотреть файл рабочего процесса".
В веб-редакторе GitHub нажмите кнопку "Изменить".
Измените
on: pushна приведенный выше пример.Зафиксируйте изменения.
Дальнейшие шаги
- Узнайте, как настроить события, которые активируют рабочие процессы