Nasazení vlastních zásad pomocí GitHub Actions

GitHub Actions umožňuje vytvářet vlastní pracovní postupy kontinuální integrace (CI) a průběžného nasazování (CD) přímo v úložišti GitHub. Tento článek popisuje, jak automatizovat nasazení vlastních zásad Azure Active Directory B2C (Azure AD B2C) pomocí GitHub Actions.

Pokud chcete automatizovat proces nasazení vlastních zásad, použijte akci GitHubu pro nasazení vlastních zásad Azure AD B2C. Tuto akci GitHubu vyvinula komunita Azure AD B2C.

Tato akce nasadí vlastní zásady Azure AD B2C do tenanta Azure AD B2C pomocí Graph API Microsoftu. Pokud zásada ve vašem tenantovi ještě neexistuje, vytvoří se. V opačném případě bude nahrazen.

Důležité

Správa vlastních zásad Azure AD B2C pomocí Azure Pipelines v současné době využívá operace ve verzi Preview, které jsou dostupné v koncovém bodu Microsoft Graph API/beta. Použití těchto rozhraní API v produkčních aplikacích se nepodporuje. Další informace najdete v referenčních informacích o beta koncovém bodu rozhraní Microsoft Graph REST API.

Požadavky

Vyberte složku vlastních zásad.

Vaše úložiště GitHubu může obsahovat všechny soubory zásad Azure AD B2C a další prostředky. V kořenovém adresáři úložiště vytvořte nebo zvolte existující složku, která obsahuje vaše vlastní zásady.

Vyberte například složku s názvem zásady. Přidejte soubory vlastních zásad Azure AD B2C do složky zásad. Pak potvrďte změny.

Změny nenasdílejte . Provedete to později po nastavení pracovního postupu nasazení.

Registrace aplikace Microsoft Graph

Pokud chcete akci GitHubu povolit interakci s Microsoft Graph API, vytvořte registraci aplikace ve svém tenantovi Azure AD B2C. Pokud jste to ještě neudělali, zaregistrujte aplikaci Microsoft Graph.

Aby akce GitHubu přistupovala k datům v Microsoft Graphu, udělte zaregistrované aplikaci příslušná oprávnění aplikace. Udělte microsoft Graph>Policy>Policy.ReadWrite.TrustFramework oprávnění v rámci rozhraní API oprávnění registrace aplikace.

Vytvoření tajného kódu šifrovaného na GitHubu

Tajné kódy GitHubu jsou šifrované proměnné prostředí, které vytvoříte v organizaci, úložišti nebo prostředí úložiště. V tomto kroku uložíte tajný kód aplikace pro aplikaci, kterou jste zaregistrovali dříve v kroku Registrace aplikace MS Graph .

Akce GitHubu pro nasazení vlastních zásad Azure AD B2C používá tajný kód k získání přístupového tokenu, který se používá k interakci s Graph API Microsoftu. Další informace najdete v tématu Vytvoření šifrovaných tajných kódů pro úložiště.

Pokud chcete vytvořit tajný kód GitHubu, postupujte takto:

  1. V GitHubu přejděte na hlavní stránku úložiště.
  2. Pod názvem úložiště vyberte Nastavení.
  3. Na levém bočním panelu vyberte Tajné kódy.
  4. Vyberte Nový tajný klíč úložiště.
  5. Jako Název zadejte ClientSecret.
  6. Jako Hodnotu zadejte tajný kód aplikace, který jste vytvořili dříve.
  7. Vyberte Add secret (Přidat tajný kód).

Vytvoření pracovního postupu GitHubu

Pracovní postup GitHubu je automatizovaná procedura, kterou přidáte do úložiště. Pracovní postupy se skládají z jedné nebo více úloh a dají se naplánovat nebo aktivovat událostí. V tomto kroku vytvoříte pracovní postup, který nasadí vaše vlastní zásady.

Chcete-li vytvořit pracovní postup, postupujte takto:

  1. V GitHubu přejděte na hlavní stránku úložiště.

  2. Pod názvem úložiště vyberte Akce.

    Snímek obrazovky s kartou GitHub Actions

  3. Pokud jste předtím nenakonfigurovali pracovní postup, vyberte nastavit pracovní postup sami. Jinak vyberte Nový pracovní postup.

    Snímek obrazovky znázorňující, jak vytvořit nový pracovní postup

  4. GitHub nabízí ve složce vytvoření souboru pracovního postupu s názvem main.yml.github/workflows . Tento soubor obsahuje informace o pracovním postupu, včetně prostředí Azure AD B2C a vlastních zásad k nasazení. Do webového editoru GitHubu přidejte následující kód YAML:

    on: push
    
    env:
      clientId: 00000000-0000-0000-0000-000000000000
      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. Aktualizujte následující vlastnosti souboru YAML:

    Sekce Name Hodnota
    env clientId ID aplikace (klienta) aplikace, kterou jste zaregistrovali v kroku Registrace aplikace MS Graph .
    env tenant Váš Azure AD název tenanta B2C (například contoso.onmicrosoft.com).
    with folder Složka, ve které jsou uložené soubory vlastních zásad, ./Policiesnapříklad .
    with files Seznam souborů zásad k nasazení oddělených čárkami, TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xmlnapříklad .

    Důležité

    Při spouštění agentů a nahrávání souborů zásad se ujistěte, že jsou nahrány ve správném pořadí:

    1. TrustFrameworkBase.xml
    2. TrustFrameworkLocalization.xml
    3. TrustFrameworkExtensions.xml
    4. SignUpOrSignin.xml
    5. ProfileEdit.xml
    6. PasswordReset.xml
  6. Vyberte Start commit (Spustit zápis).

  7. Pod poli zprávy o potvrzení určete, jestli se má potvrzení přidat do aktuální nebo nové větve. Vyberte Commit new file (Potvrdit nový soubor) nebo Propose new file (Navrhnout nový soubor ) a vytvořte žádost o přijetí změn.

Otestování pracovního postupu

Pokud chcete otestovat pracovní postup, který jste vytvořili, nasdílejte změny vlastních zásad. Jakmile úloha začne běžet, můžete zobrazit graf vizualizace průběhu spuštění a zobrazit aktivity jednotlivých kroků na GitHubu.

  1. Na GitHubu přejděte na hlavní stránku vašeho úložiště.

  2. Pod názvem úložiště vyberte Akce.

  3. Na levém bočním panelu vyberte pracovní postup, který jste vytvořili.

  4. V části Spuštění pracovního postupu vyberte název spuštění, které chcete zobrazit.

    Snímek obrazovky znázorňující, jak vybrat aktivitu pracovního postupu

  5. V části Úlohy nebo ve vizualizačním grafu vyberte úlohu, kterou chcete zobrazit.

  6. Prohlédněte si výsledky jednotlivých kroků. Následující snímek obrazovky ukazuje protokol kroků Nahrát vlastní zásadu .

    Nahrání protokolu kroků vlastních zásad

Volitelné: Naplánování pracovního postupu

Pracovní postup, který jste vytvořili, se aktivuje událostí nasdílení změn . Pokud chcete, můžete zvolit jinou událost, která aktivuje pracovní postup, například žádost o přijetí změn.

Můžete také naplánovat spuštění pracovního postupu v určitých časech UTC pomocí syntaxe POSIX cron. Událost plánu umožňuje aktivovat pracovní postup v naplánovaném čase. Další informace najdete v tématu Plánované události.

Následující příklad aktivuje pracovní postup každý den v 5:30 a 17:30 UTC:

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

Úprava pracovního postupu:

  1. V GitHubu přejděte na hlavní stránku úložiště.

  2. Pod názvem úložiště vyberte Akce.

  3. Na levém bočním panelu vyberte pracovní postup, který jste vytvořili.

  4. V části Spuštění pracovního postupu vyberte název spuštění, které chcete zobrazit.

  5. V nabídce vyberte tři tečky ... a pak vyberte Zobrazit soubor pracovního postupu.

    Snímek obrazovky znázorňující, jak zobrazit soubor pracovního postupu

  6. Ve webovém editoru GitHubu vyberte Upravit.

  7. Přejděte on: push na výše uvedený příklad.

  8. Potvrďte změny.

Další kroky