Key Vault Integration
Last updated
Last updated
Secure key management is essential to protect data in the cloud. Use Azure Key Vault to encrypt keys and small secrets like passwords and share it securely to the application with Zero trust.
Select the option âCreate a resourceâ from Azure home page
Search for the resource type âKey vaultâ in Azure Marketplace and select the service âKey Vault by Microsoftâ from the results
Click on âCreateâ
In Basics tab, select the same Subscription, Resource Group and Region as the pre-existing Inforiver deployment and give a valid name for key vault
Under Access policy tab, you could either choose âVault access policyâ or âAzure RBACâ as permission model. In this guide we are going with âVault access policyâ and make sure you have proper rights under âAccess policiesâ
In Networking, Uncheck the option âEnable public accessâ and create a private endpoint in the âprivateâ subnet of the Inforiver VNet with private DNS Zone enabled
Validate everything and click on Create
Once completed, you should see 3 new resources added to the Inforiver Resource group
From Inforiver App service, enable âSystem assigned managed Identityâ and save. Copy the created object ID, this will be used to assign permissions on Key vault to get secrets
From Key Vault, Create a new access policy
Under âPermissionsâ tab, select âSecret Managementâ as template and choose only âListâ and âGetâ in âSecret permissionsâ
Under Principal tab, search using the copied object ID and select the listed principal
Validate everything and create
Enable Public access for Key vault temporarily to create secrets
From App service configuration page, copy each confidential environment variableâs name and value then create them as secrets in Key vault
Key vault secret names cannot contain special characters, so you need to remove the underscores in the name. For example: âSMTP_API_KEYâ will need to be changed into âSMTPAPIKEYâ
We recommend creating these listed secrets in Key vault
Once you have created (copied from app service) all the secrets, you need to change the app configuration values to reference the key vault secrets instead of direct plain text passwords. Reference example: @Microsoft.KeyVault(SecretUri=https://.vault.azure.net/secrets//)
Editing App Service Environment values
Making sure that every secret is updated with key vault reference and then click on Save
Please note that clicking on âContinueâ here will restart the app service
Check if the app restart is successful and you can login to Inforiver
Finally, disable the âPublic accessâ in Key vault and restart the app service once again to validate if the app service could connect to it using private endpoint
Validate in Inforiver management portal, metrics tab that everything works and green.