Toegang Key Vault geheim bij het implementeren van Azure Managed Applications
Wanneer u een beveiligde waarde (zoals een wachtwoord) als parameter moet doorgeven tijdens de implementatie, kunt u de waarde ophalen uit een Azure Key Vault. Als u toegang wilt Key Vault bij het implementeren van beheerde toepassingen, moet u toegang verlenen tot de service-principal van de resourceprovider van het apparaat. De service Managed Applications gebruikt deze identiteit om bewerkingen uit te voeren. Als u een waarde wilt ophalen uit een Key Vault tijdens de implementatie, moet de service-principal toegang hebben tot de Key Vault.
In dit artikel wordt beschreven hoe u de Key Vault te werken met beheerde toepassingen.
Sjabloonimplementatie inschakelen
Selecteer in de portal uw Key Vault.
Selecteer Toegangsbeleid.

Selecteer Klik hierop om geavanceerde beleidsregels weer te geven.

Selecteer Toegang tot Azure Resource Manager voor sjabloonimplementatie inschakelen. Selecteer vervolgens Opslaan.

Service toevoegen als inzender
Wijs de rol Inzender toe aan de gebruiker van de resourceprovider voor het apparaat in het bereik van de sleutelkluis.
Zie Azure-rollen toewijzen met behulp vande Azure Portal .
Naslag Key Vault geheim
Als u een geheim van een Key Vault wilt doorgeven aan een sjabloon in uw beheerde toepassing, moet u een gekoppelde of geneste sjabloon gebruiken en verwijzen naar de Key Vault in de parameters voor de gekoppelde of geneste sjabloon. Geef de resource-id van de Key Vault en de naam van het geheim op.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "The location where the resources will be deployed."
}
},
"vaultName": {
"type": "string",
"metadata": {
"description": "The name of the keyvault that contains the secret."
}
},
"secretName": {
"type": "string",
"metadata": {
"description": "The name of the secret."
}
},
"vaultResourceGroupName": {
"type": "string",
"metadata": {
"description": "The name of the resource group that contains the keyvault."
}
},
"vaultSubscription": {
"type": "string",
"defaultValue": "[subscription().subscriptionId]",
"metadata": {
"description": "The name of the subscription that contains the keyvault."
}
}
},
"resources": [
{
"type": "Microsoft.Resources/deployments",
"apiVersion": "2018-05-01",
"name": "dynamicSecret",
"properties": {
"mode": "Incremental",
"expressionEvaluationOptions": {
"scope": "inner"
},
"template": {
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"adminLogin": {
"type": "string"
},
"adminPassword": {
"type": "securestring"
},
"location": {
"type": "string"
}
},
"variables": {
"sqlServerName": "[concat('sql-', uniqueString(resourceGroup().id, 'sql'))]"
},
"resources": [
{
"type": "Microsoft.Sql/servers",
"apiVersion": "2018-06-01-preview",
"name": "[variables('sqlServerName')]",
"location": "[parameters('location')]",
"properties": {
"administratorLogin": "[parameters('adminLogin')]",
"administratorLoginPassword": "[parameters('adminPassword')]"
}
}
],
"outputs": {
"sqlFQDN": {
"type": "string",
"value": "[reference(variables('sqlServerName')).fullyQualifiedDomainName]"
}
}
},
"parameters": {
"location": {
"value": "[parameters('location')]"
},
"adminLogin": {
"value": "ghuser"
},
"adminPassword": {
"reference": {
"keyVault": {
"id": "[resourceId(parameters('vaultSubscription'), parameters('vaultResourceGroupName'), 'Microsoft.KeyVault/vaults', parameters('vaultName'))]"
},
"secretName": "[parameters('secretName')]"
}
}
}
}
}
],
"outputs": {
}
}
Volgende stappen
U hebt uw toepassing geconfigureerd Key Vault toegankelijk zijn tijdens de implementatie van een beheerde toepassing.
- Zie Use Azure Key Vault to pass secure parameter value during deployment (Een beveiligde parameterwaarde doorgeven tijdens de implementatie) voor meer informatie over het doorgeven van een waarde uit een Key Vault als sjabloonparameter.
- Zie Voorbeeldprojecten voor door Azure beheerde toepassingen voor voorbeelden van beheerde toepassingen.
- Zie Aan de slag met CreateUiDefinition voor meer informatie over het maken van een UI-definitiebestand voor een beheerde toepassing.