Oefening: een door het systeem toegewezen beheerde identiteit voor een virtuele Azure-machine configureren
De virtuele machine (VM) die als host fungeert voor uw app, is geïmplementeerd in Azure. U moet nu een beheerde identiteit inschakelen in het Azure-abonnement van het bedrijf. De bedoeling is om uw app voor voorraadbeheer toegang te verlenen tot de benodigde Azure-resources.
In deze les maakt u een door het systeem toegewezen beheerde identiteit voor uw VIRTUELE machine. U ziet hoe u toegang krijgt tot Azure-resources vanuit de identiteit.
De omgeving instellen
Gebruik de volgende code om een exemplaar van Azure Key Vault te maken om de persoonlijke gegevens van uw bedrijf op te slaan. Elke Azure Key Vault-naam moet wereldwijd uniek zijn.
export VMNAME=prodserver export KVNAME=furniture-secrets$RANDOM az keyvault create --name $KVNAME \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --default-action Allow \ --location $(az resource list --output tsv --query [0].location) \ --sku standard
Maak een virtuele machine voor het hosten van uw bedrijfsapp. Sla het openbare IP-adres op in een omgevingsvariabele.
export publicIP=$(az vm create \ --name $VMNAME \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --image Ubuntu2204 \ --generate-ssh-keys \ --output tsv \ --query "publicIpAddress")
Notitie
Het opstarten van de virtuele machine kan enkele minuten duren.
Een door het systeem toegewezen beheerde identiteit voor een virtuele Azure-machine configureren
Wijs een door het systeem toegewezen beheerde identiteit toe aan de virtuele machine.
az vm identity assign \ --name $VMNAME \ --resource-group "<rgn>[sandbox resource group name]</rgn>"
Met deze opdracht moet een antwoord met daarin de beheerde identiteit worden geretourneerd. Hieronder volgt een voorbeeld van een antwoord:
{ "systemAssignedIdentity": "a78ddd60-183b-4e27-9f0d-c11a11c417d8", "userAssignedIdentities": {} }
Uw sleutelkluis gebruiken voor het opslaan van een geheim
Voeg uw verbindingsreeks toe aan de sleutelkluis.
az keyvault secret set \ --vault-name $KVNAME \ --name DBCredentials \ --value "Server=tcp:prodserverSQL.database.windows.net,1433;Database=myDataBase;User ID=mylogin@myserver;Password=examplePassword;Trusted_Connection=False;Encrypt=True;"
Noteer de naam van uw sleutelkluis.
echo $KVNAME
De virtuele machine instellen voor de app voor voorraadbeheer van uw bedrijf
Gebruik SSH om toegang te krijgen tot uw virtuele machine.
ssh $publicIP
Bij de prompt typt u ja.
Voor de volgende oefening downloadt en installeert u de .NET Core-versie op de VM die door de voorbeeld-app van de module wordt gebruikt.
sudo snap install dotnet-sdk --classic --channel=3.1
Notitie
Het installeren van de .NET SDK kan enkele minuten duren.
Download de broncode voor de voorbeeld-app van deze module.
git clone https://github.com/MicrosoftDocs/mslearn-authenticate-apps-with-managed-identities identity
Beëindig de SSH-sessie.
exit