simple-az
v0.1.4
Published
Interact with Azure via TypeScript and Node
Downloads
4
Readme
simple-az
Interact with Azure via TypeScript and Node, with Jest testing.
This is an ESM Module that simplifies some of the common tasks encountered when using Azure.
Usage
The module is available from NPM.
To install it:
npm install simple-az
To use it:
import "dotenv/config";
import { DefaultAzureCredential } from "@azure/identity";
import { getCertificatePrivateKey, getCertificateThumbprint } from "simple-az";
const thumbprint = await getCertificatePrivateKey(
new DefaultAzureCredential(),
process.env.AZURE_KEYVAULT_URL,
process.env.AZURE_KEYVAULT_CERTIFICATE_NAME
);
Build
Build the module by running the following commands
npm install
npm run build
curl -sL https://aka.ms/InstallAzureCLIDeb | sudo bash
Test
- Create a .env file
- Register an Azure Active Directory App Registration
- in the .env file set
- AZURE_TENANT_ID to the Azure Tenant ID of the Azure Active Directory App Registration
- AZURE_CLIENT_ID to the Azure AD App Registration ID with Certificate Read Access on the Keyvault
- in the .env file set
- Create a secret for the Azure Active Directory App Registration
- in the .env file set
- AZURE_CLIENT_SECRET to the Secret of the Azure Active Directory App Registration
- in the .env file set
- Create an Azure Resource Group
- Create an Azure Key Vault in the Azure Resource Group
- in the .env file set
- AZURE_KEYVAULT_URL to the URL of the Azure Keyvault
- in the .env file set
- Generate a Certificate in the Azure
- in the .env file set
- AZURE_KEYVAULT_CERTIFICATE_NAME to the Name of the Certificate in the Azure Keyvault
- in the .env file set
For example:
AZURE_CLIENT_ID="Azure AD App Registration ID with Certificate Read Access on the Keyvault"
AZURE_CLIENT_SECRET="A secret for the Azure AD App Registration"
AZURE_TENANT_ID="The Azure Tenant ID of the Azure Active Directory App Registration"
AZURE_KEYVAULT_URL="The URL to the Azure Keyvault, e.g. https://my-keyvault.vault.azure.net/"
AZURE_KEYVAULT_CERTIFICATE_NAME="The name of a certificate in the Azure Keyvault"
- Log into Azure
az login --use-device-code
- Run Jest
npm run test
Publish
npm login
npm publish --access=public