commit 7481d7a0e15fc54b1b9ae5e1a7bf5aa69588c7e2 Author: Wolfgang Hottgenroth Date: Wed Sep 14 16:26:50 2022 +0200 initial diff --git a/scripts/access-azure-keyvault.py b/scripts/access-azure-keyvault.py new file mode 100644 index 0000000..952b94b --- /dev/null +++ b/scripts/access-azure-keyvault.py @@ -0,0 +1,32 @@ +import argparse +import sys +from azure.keyvault.secrets import SecretClient +from azure.identity import DefaultAzureCredential +from azure.core.exceptions import AzureError + +parser = argparse.ArgumentParser(description="access-key-vault.py") +parser.add_argument('--keyvault', '-v', + help="Name of Azure Key Vault", + required=True) +parser.add_argument('--secretname', '-s', + help='Name of secret to query', + required=True) +args = parser.parse_args() +keyVaultName = args.keyvault +secretName = args.secretname + +KVUri = f"https://{keyVaultName}.vault.azure.net" + +try: + credential = DefaultAzureCredential() + client = SecretClient(vault_url=KVUri, credential=credential) + retrieved_secret = client.get_secret(secretName) + + print(f"{retrieved_secret.value}") +except AzureError as e: + print(f"AzureError: <{e.__class__.__name__}> <{e}>", file=sys.stderr) + sys.exit(1) +except Exception as e: + print(f"Error: <{e.__class__.__name__}> <{e}>", file=sys.stderr) + sys.exit(1) + diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..6bee539 --- /dev/null +++ b/setup.py @@ -0,0 +1,13 @@ +from setuptools import setup + +setup( + name = 'access-azure-keyvault', + version = '0.1', + author = 'Wolfgang Hottgenroth', + author_email = 'wolfgang.hottgenroth@icloud.com', + description = 'Tool to retrieve secrets from an Azure keyvault', + license = 'MIT', + scripts = [ 'scripts/access-azure-keyvault.py' ] +) + +