Partilhar via


Implante políticas personalizadas com as Ações do GitHub

Importante

A partir de 1º de maio de 2025, o Azure AD B2C não estará mais disponível para compra para novos clientes. Saiba mais nas nossas Perguntas Frequentes.

O GitHub Actions permite que você crie fluxos de trabalho personalizados de integração contínua (CI) e implantação contínua (CD) diretamente em seu repositório GitHub. Este artigo descreve como automatizar a implantação de políticas personalizadas do Azure Ative Directory B2C (Azure AD B2C) usando as Ações do GitHub.

Para automatizar o processo de implantação de política personalizada, use a Ação do GitHub para implantar políticas personalizadas do Azure AD B2C. Esta Ação do GitHub foi desenvolvida pela comunidade B2C do Azure AD.

Esta ação implanta políticas personalizadas do Azure AD B2C em seu locatário do Azure AD B2C usando a API do Microsoft Graph. Se a política ainda não existir no seu locatário, ela será criada. Caso contrário, será substituído.

Importante

A gestão de políticas personalizadas do Azure AD B2C com Azure Pipelines usa atualmente operações de visualização disponíveis no endpoint da API do Microsoft Graph. Não há suporte para o uso dessas APIs em aplicativos de produção. Para obter mais informações, consulte a referência de ponto de extremidade beta da API REST do Microsoft Graph.

Pré-requisitos

Selecione uma pasta de políticas personalizadas

Seu repositório GitHub pode conter todos os seus arquivos de política do Azure AD B2C e outros ativos. No diretório raiz do repositório, crie ou escolha uma pasta existente que contenha suas políticas personalizadas.

Por exemplo, selecione uma pasta chamada policies. Adicione seus arquivos de política personalizados do Azure AD B2C à pasta de políticas . Em seguida, confirme as alterações.

Não empurre as alterações. Você fará isso mais tarde, depois de configurar o fluxo de trabalho de implantação.

Registrar um aplicativo do Microsoft Graph

Para permitir que a Ação do GitHub interaja com a API do Microsoft Graph, crie um registro de aplicativo em seu locatário do Azure AD B2C. Se ainda não o fez, registe uma aplicação Microsoft Graph.

Para que a Ação do GitHub acesse dados no Microsoft Graph, conceda ao aplicativo registrado as permissões de aplicativo relevantes. Conceda a permissão Microsoft Graph>Policy>Policy.ReadWrite.TrustFramework dentro das Permissões de API do registo de aplicação.

Criar um segredo criptografado do GitHub

Os segredos do GitHub são variáveis de ambiente criptografadas que você cria em uma organização, repositório ou ambiente de repositório. Nesta etapa, você armazena o segredo do aplicativo para o aplicativo registrado anteriormente na etapa Registrar um aplicativo do MS Graph .

A Ação do GitHub para a implantação de políticas personalizadas do Azure AD B2C usa o segredo para adquirir um token de acesso, utilizado para interagir com a API do Microsoft Graph. Para obter mais informações, consulte Criando segredos criptografados para um repositório.

Para criar um segredo do GitHub, siga estas etapas:

  1. No GitHub, navegue até a página principal do repositório.
  2. Sob o nome do repositório, selecione Configurações.
  3. Na barra lateral esquerda, selecione Segredos.
  4. Selecione Novo segredo do repositório.
  5. Para Name, digite ClientSecret.
  6. Para o Valor, insira o segredo do aplicativo criado anteriormente.
  7. Selecione Adicionar segredo.

Criar um fluxo de trabalho do GitHub

O fluxo de trabalho do GitHub é um procedimento automatizado que você adiciona ao repositório. Os fluxos de trabalho são compostos por um ou mais trabalhos e podem ser agendados ou acionados por um evento. Nesta etapa, você cria um fluxo de trabalho que implanta sua política personalizada.

Para criar um fluxo de trabalho, siga estas etapas:

  1. No GitHub, navegue até a página principal do repositório.

  2. Sob o nome do repositório, selecione Ações.

    Captura de tela mostrando a guia Ações do GitHub

  3. Se você não configurou um fluxo de trabalho antes, selecione configurar um fluxo de trabalho você mesmo. Caso contrário, selecione Novo fluxo de trabalho.

    Captura de ecrã a mostrar como criar um novo fluxo de trabalho

  4. O GitHub oferece a criação de um arquivo de fluxo de trabalho nomeado main.yml na .github/workflows pasta. Esse arquivo contém informações sobre o fluxo de trabalho, incluindo seu ambiente do Azure AD B2C e as políticas personalizadas a serem implantadas. No editor da Web do GitHub, adicione o seguinte código 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 }}
    
  5. Atualize as seguintes propriedades do arquivo YAML:

    Seção Nome Valor
    env clientId ID do aplicativo (cliente) do aplicativo que você registrou na etapa Registrar um aplicativo MS Graph .
    env tenant Seu nome de locatário do Azure AD B2C (por exemplo, contoso.onmicrosoft.com).
    with folder Uma pasta onde os arquivos de políticas personalizadas são armazenados, por exemplo, ./Policies.
    with files Lista delimitada por vírgulas de arquivos de política a serem implantados, por exemplo, TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml.

    Importante

    Ao executar os agentes e carregar os arquivos de política, verifique se eles foram carregados na ordem correta:

    1. TrustFrameworkBase.xml
    2. TrustFrameworkLocalization.xml
    3. TrustFrameworkExtensions.xml
    4. SignUpOrSignin.xml
    5. ProfileEdit.xml
    6. PasswordReset.xml
  6. Selecione Iniciar commit.

  7. Abaixo dos campos da mensagem de confirmação, indique se deseja adicionar sua confirmação à ramificação atual ou a uma nova ramificação. Selecione Confirmar novo arquivo ou Propor novo arquivo para criar uma solicitação pull.

Testar o fluxo de trabalho

Para testar o fluxo de trabalho que você criou, envie por push as alterações da sua política personalizada. Depois que seu trabalho começar a ser executado, você poderá ver um gráfico de visualização do progresso da execução e visualizar a atividade de cada etapa no GitHub.

  1. No GitHub, navegue até a página principal do repositório.

  2. Sob o nome do repositório, selecione Ações.

  3. Na barra lateral esquerda, selecione o fluxo de trabalho que você criou.

  4. Em Execução do fluxo de trabalho, selecione o nome da execução que deseja ver.

    Captura de tela mostrando como selecionar a atividade do fluxo de trabalho

  5. Em Trabalhos ou no gráfico de visualização, selecione o trabalho que deseja ver.

  6. Veja os resultados de cada etapa. A seguinte captura de ecrã demonstra o registro de etapas da política personalizada de upload.

    O log de etapas de upload de política personalizada

Opcional: Agende seu fluxo de trabalho

O fluxo de trabalho criado é acionado pelo evento push . Se preferir, você pode escolher outro evento para acionar o fluxo de trabalho, por exemplo, uma solicitação pull.

Você também pode agendar um fluxo de trabalho para ser executado em horários UTC específicos usando a sintaxe cron POSIX. O evento schedule permite acionar um fluxo de trabalho em um horário agendado. Para obter mais informações, consulte Eventos agendados.

O exemplo a seguir aciona o fluxo de trabalho todos os dias às 5:30 e 17:30 UTC:

on:
  schedule:
    # * is a special character in YAML so you have to quote this string
    - cron:  '30 5,17 * * *'

Para editar seu fluxo de trabalho:

  1. No GitHub, navegue até a página principal do repositório.

  2. Sob o nome do repositório, selecione Ações.

  3. Na barra lateral esquerda, selecione o fluxo de trabalho que você criou.

  4. Em Execução do fluxo de trabalho, selecione o nome da execução que deseja ver.

  5. No menu, selecione os três pontos ..., e, em seguida, selecione Exibir o arquivo de fluxo de trabalho.

    Captura de tela mostrando como exibir o arquivo de fluxo de trabalho

  6. No editor da Web do GitHub, selecione Editar.

  7. Mude on: push para o exemplo acima.

  8. Confirme suas alterações.

Próximos passos