A cache for @azure/msal-node that uses Azure KeyVault as a store.
Install with
npm install @intility/msal-keyvault-cache
Then, initialize the cache and use it in your client configuration
import { PublicClientApplication } from "@azure/msal-node";
import keyVaultCache from "@intility/msal-keyvault-cache";
let cachePlugin = keyVaultCache("https://YOUR_KEYVAULT_HERE.vault.azure.net/");
let publicClientConfig = {
auth: {
clientId: "CLIENT_ID",
authority: "https://login.microsoftonline.com/TENANT_ID",
},
cache: {
cachePlugin,
},
};
let publicClientApplication = new PublicClientApplication(publicClientConfig);
By default, it will authenticate to the KeyVault by using DefaultAzureCredential
from '@azure/identity'. This means you can authenticate a number of ways. In CI you can use environment variables, and locally you can use the Azure CLI.
let cachePlugin = keyVaultCache(keyVaultUrl);
let cachePlugin = keyVaultCache(keyVaultUrl, secretName);
let cachePlugin = keyVaultCache(keyVaultUrl, secretName, credential);
A JavaScript string containing the url to your Azure KeyVault.
- Default Value:
"msal-cache"
A JavaScript string containing the name of the secret.
- Default Value:
new DefaultAzureCredential()
A Credential Class
used to authenticate to the Azure KeyVault.
A cachePlugin
that can be used in a @azure/msal-node
Client Configuration.