Aangepast beleid implementeren met GitHub Actions
met GitHub Actions kunt u aangepaste werkstromen voor continue integratie (CI) en continue implementatie (CD) rechtstreeks in uw GitHub-opslagplaats maken. In dit artikel wordt beschreven hoe u de implementatie van aangepaste beleidsregels voor Azure Active Directory B2C (Azure AD B2C) automatiseert met behulp van GitHub Actions.
Als u het implementatieproces voor aangepaste beleidsregels wilt automatiseren, gebruikt u de GitHub Action voor het implementeren van Azure AD aangepast B2C-beleid. Deze GitHub Action is ontwikkeld door de Azure AD B2C-community.
Met deze actie wordt Azure AD aangepast B2C-beleid geïmplementeerd in uw Azure AD B2C-tenant met behulp van de Microsoft Graph API. Als het beleid nog niet bestaat in uw tenant, wordt het gemaakt. Anders wordt het vervangen.
Belangrijk
Het beheren van Azure AD B2C aangepast beleid met Azure Pipelines maakt momenteel gebruik van preview-bewerkingen die beschikbaar zijn op het Microsoft Graph API /beta
eindpunt. Het gebruik van deze API's in productie-apps wordt niet ondersteund. Zie de naslaginformatie over de bèta-eindpunten van de Microsoft Graph REST API voor meer informatie.
Vereisten
- Voer de stappen uit die in Aan de slag met aangepast beleid in Active Directory B2C worden beschreven.
- Als u nog geen GitHub-opslagplaats hebt gemaakt, maakt u er een.
Een map met aangepaste beleidsregels selecteren
Uw GitHub-opslagplaats kan al uw Azure AD B2C-beleidsbestanden en andere assets bevatten. Maak of kies in de hoofdmap van uw opslagplaats een bestaande map die uw aangepaste beleid bevat.
Selecteer bijvoorbeeld een map met de naam beleid. Voeg uw Azure AD aangepaste B2C-beleidsbestanden toe aan de map met beleidsregels. Voer vervolgens de wijzigingen door.
Push de wijzigingen niet. U doet dit later, nadat u de implementatiewerkstroom hebt ingesteld.
Een Microsoft Graph-toepassing registreren
Als u de GitHub Action wilt laten communiceren met de Microsoft Graph API, maakt u een toepassingsregistratie in uw Azure AD B2C-tenant. Als u dit nog niet hebt gedaan, registreert u een Microsoft Graph-toepassing.
Voor de GitHub Action voor toegang tot gegevens in Microsoft Graph verleent u de geregistreerde toepassing de relevante toepassingsmachtigingen. Verdeel de machtiging Microsoft Graph>Policy>Policy.ReadWrite.TrustFramework binnen de API-machtigingen van de app-registratie.
Een met GitHub versleuteld geheim maken
GitHub-geheimen zijn versleutelde omgevingsvariabelen die u maakt in een organisatie, opslagplaats of opslagplaatsomgeving. In deze stap slaat u het toepassingsgeheim op voor de toepassing die u eerder hebt geregistreerd in de stap Een MS Graph-toepassing registreren .
De GitHub Action voor het implementeren van aangepast B2C-beleid voor Azure AD gebruikt het geheim om een toegangstoken te verkrijgen dat wordt gebruikt om te communiceren met de Microsoft-Graph API. Zie Versleutelde geheimen maken voor een opslagplaats voor meer informatie.
Voer de volgende stappen uit om een GitHub-geheim te maken:
- Ga in GitHub naar de hoofdpagina van de opslagplaats.
- Selecteer instellingen onder de naam van de opslagplaats.
- Selecteer Geheimen in de linkerzijbalk.
- Selecteer Nieuw opslagplaatsgeheim.
- Bij Naam typt u ClientSecret.
- Voer bij Waarde het toepassingsgeheim in dat u eerder hebt gemaakt.
- Selecteer Geheim toevoegen.
Een GitHub-werkstroom maken
De GitHub-werkstroom is een geautomatiseerde procedure die u toevoegt aan uw opslagplaats. Werkstromen bestaan uit een of meer taken en kunnen worden gepland of geactiveerd door een gebeurtenis. In deze stap maakt u een werkstroom die uw aangepaste beleid implementeert.
Voer de volgende stappen uit om een werkstroom te maken:
Navigeer in GitHub naar de hoofdpagina van uw opslagplaats.
Selecteer acties onder de naam van de opslagplaats.
Als u nog geen werkstroom hebt geconfigureerd, selecteert u Zelf een werkstroom instellen. Selecteer anders Nieuwe werkstroom.
GitHub biedt aan om een werkstroombestand met de naam
main.yml
in de.github/workflows
map te maken. Dit bestand bevat informatie over de werkstroom, waaronder uw Azure AD B2C-omgeving en het aangepaste beleid dat moet worden geïmplementeerd. Voeg in de GitHub-webeditor de volgende YAML-code toe: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 }}
Werk de volgende eigenschappen van het YAML-bestand bij:
Sectie Name Waarde env
clientId
Toepassings-id (client) van de toepassing die u hebt geregistreerd in de stap Een MS Graph-toepassing registreren . env
tenant
De naam van uw Azure AD B2C-tenant (bijvoorbeeld contoso.onmicrosoft.com). with
folder
Een map waarin de bestanden met aangepaste beleidsregels worden opgeslagen, ./Policies
bijvoorbeeld .with
files
Door komma's gescheiden lijst met beleidsbestanden die moeten worden geïmplementeerd, TrustFrameworkBase.xml,TrustFrameworkLocalization.xml,TrustFrameworkExtensions.xml,SignUpOrSignin.xml
bijvoorbeeld .Belangrijk
Wanneer u de agents uitvoert en de beleidsbestanden uploadt, controleert u of ze in de juiste volgorde zijn geüpload:
- TrustFrameworkBase.xml
- TrustFrameworkLocalization.xml
- TrustFrameworkExtensions.xml
- SignUpOrSignin.xml
- ProfileEdit.xml
- PasswordReset.xml
Selecteer Doorvoeren starten.
Geef onder de velden voor het doorvoerbericht aan of u de doorvoer wilt toevoegen aan de huidige vertakking of aan een nieuwe vertakking. Selecteer Nieuw bestand doorvoeren of Nieuw bestand voorstellen om een pull-aanvraag te maken.
Uw werkstroom testen
Als u de werkstroom wilt testen die u hebt gemaakt, pusht u de wijzigingen van uw aangepaste beleid. Zodra de taak is gestart, kunt u een visualisatiegrafiek van de voortgang van de uitvoering bekijken en de activiteit van elke stap bekijken op GitHub.
Ga op GitHub naar de hoofdpagina van uw opslagplaats.
Selecteer acties onder de naam van de opslagplaats.
Selecteer in de linkerzijbalk de werkstroom die u hebt gemaakt.
Selecteer onder Werkstroomuitvoeringen de naam van de uitvoering die u wilt zien.
Selecteer onder Taken of in de visualisatiegrafiek de taak die u wilt zien.
Bekijk de resultaten van elke stap. In de volgende schermopname ziet u het stappenlogboek aangepaste beleidsregels uploaden .
Optioneel: uw werkstroom plannen
De werkstroom die u hebt gemaakt, wordt geactiveerd door de pushgebeurtenis . Als u wilt, kunt u een andere gebeurtenis kiezen om de werkstroom te activeren, bijvoorbeeld een pull-aanvraag.
U kunt ook plannen dat een werkstroom wordt uitgevoerd op specifieke UTC-tijden met behulp van posix-cron-syntaxis. Met de planningsevenement kunt u een werkstroom op een gepland tijdstip activeren. Zie Geplande gebeurtenissen voor meer informatie.
In het volgende voorbeeld wordt de werkstroom elke dag om 5:30 en 17:30 UTC geactiveerd:
on:
schedule:
# * is a special character in YAML so you have to quote this string
- cron: '30 5,17 * * *'
Uw werkstroom bewerken:
Navigeer in GitHub naar de hoofdpagina van uw opslagplaats.
Selecteer acties onder de naam van de opslagplaats.
Selecteer in de linkerzijbalk de werkstroom die u hebt gemaakt.
Selecteer onder Werkstroomuitvoeringen de naam van de uitvoering die u wilt zien.
Selecteer in het menu de drie puntjes ... en selecteer vervolgens Het werkstroombestand weergeven.
Selecteer Bewerken in de GitHub-webeditor.
Wijzig
on: push
in het bovenstaande voorbeeld.Uw wijzigingen doorvoeren .
Volgende stappen
- Meer informatie over het configureren van gebeurtenissen die werkstromen activeren