9
votes

I've read in most articles that deploying an application in Azure is needed such that an application will be able programmatically access the secrets stored in the Azure Key Vault.

Is there a way to not deploy the application in azure and have it still be able to access the Azure Key Vault to fetch the secrets either by using client id and client secret or certificates?

1
By using Azure Key Vault REST API: msdn.microsoft.com/en-us/library/azure/dn903609.aspxMilen
This article is also very helpful for setting up a KeyVault and writing a simple C# app that talks to it: blogs.msdn.microsoft.com/kaevans/2016/10/31/…bytedev
I've documented the process of configuring an Azure Key Vault and accessing it from a non-Azure application here.therightstuff

1 Answers

6
votes

There's no need to run your application in Azure for you to use Azure KeyVault. Your application can run on your local machine, somewhere on your intranet, in AWS or where-ever you like.

In order to access KeyVault, you need a security token from Azure Active Directory (AAD), so you do need to register your application within an AAD directory.

You can find more information on getting a token to talk to Azure KeyVault in this blog post here.