Azure Key Vault-geheimen gebruiken in uw pijplijn
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Met Azure Key Vault kunt u uw gevoelige informatie, zoals wachtwoorden, API-sleutels, certificaten, enzovoort, veilig opslaan en beheren. met behulp van Azure Key Vault kunt u eenvoudig versleutelingssleutels maken en beheren om uw gegevens te versleutelen. Azure Key Vault kan ook worden gebruikt om certificaten voor al uw resources te beheren. In dit artikel leert u het volgende:
- Maak een Azure Key Vault.
- Configureer uw Key Vault-machtigingen.
- Maak een nieuwe serviceverbinding.
- Query's uitvoeren op geheimen uit uw Azure-pijplijn.
Vereisten
- een Azure DevOps-organisatie. Maak er gratis een als u er nog geen hebt.
- Uw eigen project. Maak een project als u er nog geen hebt.
- Uw eigen opslagplaats. Maak een nieuwe Git-opslagplaats als u er nog geen hebt.
- Een Azure-abonnement. Maak een gratis Azure-account als u er nog geen hebt.
Een sleutelkluis maken
Meld u aan bij Azure Portal en selecteer vervolgens Een resource maken.
Selecteer Onder Key Vault maken de optie Maken om een nieuwe Azure Key Vault te maken.
Selecteer uw abonnement in de vervolgkeuzelijst en selecteer vervolgens een bestaande resourcegroep of maak een nieuwe. Voer een sleutelkluisnaam in, selecteer een regio, kies een prijscategorie en selecteer Volgende als u aanvullende eigenschappen wilt configureren. Selecteer anders Controleren en maken om de standaardinstellingen te behouden.
Zodra de implementatie is voltooid, selecteert u Ga naar de resource.
Verificatie instellen
Een door de gebruiker toegewezen beheerde identiteit maken
Meld u aan bij Azure Portal en zoek vervolgens naar de service Beheerde identiteiten in de zoekbalk.
Selecteer Maken en vul de vereiste velden als volgt in:
- Abonnement: Selecteer uw abonnement in de vervolgkeuzelijst.
- Resourcegroep: Selecteer een bestaande resourcegroep of maak een nieuwe.
- Regio: Selecteer een regio in de vervolgkeuzelijst.
- Naam: voer een naam in voor uw door de gebruiker toegewezen beheerde identiteit.
Selecteer Beoordelen en maken wanneer u klaar bent.
Zodra de implementatie is voltooid, selecteert u Ga naar de resource en kopieert u vervolgens de waarden voor het abonnement en de client-id die u in de komende stappen wilt gebruiken.
Navigeer naar Instellingeneigenschappen> en kopieer de tenant-id-waarde van uw beheerde identiteit voor later gebruik.
Toegangsbeleid voor key vault instellen
Navigeer naar Azure Portal en gebruik de zoekbalk om de sleutelkluis te vinden die u eerder hebt gemaakt.
Selecteer Toegangsbeleid en selecteer Vervolgens Maken om een nieuw beleid toe te voegen.
Schakel onder Geheime machtigingen de selectievakjes Ophalen en Lijst in.
Selecteer Volgende en plak vervolgens de client-id van de beheerde identiteit die u eerder hebt gemaakt in de zoekbalk. Selecteer uw beheerde identiteit.
Selecteer Volgende en vervolgens nogmaals Volgende .
Controleer uw nieuwe beleidsregels en selecteer Vervolgens Maken wanneer u klaar bent.
Een serviceverbinding maken
Meld u aan bij uw Azure DevOps-organisatie en navigeer vervolgens naar uw project.
Selecteer Serviceverbindingen voor Project-instellingen>en selecteer vervolgens Nieuwe serviceverbinding om een nieuwe serviceverbinding te maken.
Selecteer Azure Resource Manager en selecteer vervolgens Volgende.
Voor Identiteitstype selecteert u Beheerde identiteit in de vervolgkeuzelijst.
Vul voor stap 1: Details van beheerde identiteit de velden als volgt in:
Abonnement voor beheerde identiteit: selecteer het abonnement met uw beheerde identiteit.
Resourcegroep voor beheerde identiteit: selecteer de resourcegroep die als host fungeert voor uw beheerde identiteit.
Beheerde identiteit: selecteer uw beheerde identiteit in de vervolgkeuzelijst.
Vul voor stap 2: Azure Scope de velden als volgt in:
Bereikniveau voor serviceverbinding: Selecteer Abonnement.
Abonnement voor serviceverbinding: selecteer het abonnement waartoe uw beheerde identiteit toegang heeft.
Resourcegroep voor serviceverbinding: (optioneel) Geef op om de toegang tot een beheerde identiteit tot één resourcegroep te beperken.
Voor stap 3: Serviceverbindingsgegevens:
Serviceverbindingsnaam: geef een naam op voor uw serviceverbinding.
Naslaginformatie over servicebeheer: (optioneel) contextinformatie uit een ITSM-database.
Beschrijving: (Optioneel) Voeg een beschrijving toe.
Schakel in Beveiliging het selectievakje Toegang verlenen aan alle pijplijnen in om toe te staan dat alle pijplijnen deze serviceverbinding gebruiken. Als u deze optie niet selecteert, moet u handmatig toegang verlenen aan elke pijplijn die gebruikmaakt van deze serviceverbinding.
Selecteer Opslaan om de serviceverbinding te valideren en te maken.
Geheimen in uw pijplijn opvragen en gebruiken
Met behulp van de Azure Key Vault-taak kunnen we de waarde van ons geheim ophalen en gebruiken in volgende taken in onze pijplijn. Houd er rekening mee dat geheimen expliciet moeten worden toegewezen aan een env-variabele, zoals wordt weergegeven in het onderstaande voorbeeld.
pool:
vmImage: 'ubuntu-latest'
steps:
- task: AzureKeyVault@1
inputs:
azureSubscription: 'SERVICE_CONNECTION_NAME'
KeyVaultName: 'KEY_VAULT_NAME'
SecretsFilter: '*'
- bash: |
echo "Secret Found! $MY_MAPPED_ENV_VAR"
env:
MY_MAPPED_ENV_VAR: $(SECRET_NAME)
De uitvoer van de laatste bash-opdracht moet er als volgt uitzien:
Secret Found! ***
Notitie
Als u query's wilt uitvoeren op meerdere geheimen uit uw Azure Key Vault, gebruikt u het SecretsFilter
argument om een door komma's gescheiden lijst met geheime namen door te geven: 'secret1, secret2'.