Key Vault Integration

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.

Create Key Vault

  • 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

Configure Key Vault

  • 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

Configure App Service

  • 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.

Last updated