Skip to content
This repository has been archived by the owner on Sep 18, 2022. It is now read-only.

Latest commit

 

History

History
55 lines (36 loc) · 2.06 KB

README.md

File metadata and controls

55 lines (36 loc) · 2.06 KB

pydantic-azure-secrets

A class to use pydantic settings together with Azure KeyVault

tests

The behaviour of the class is exactly like in pydantic.BaseSettings, except the step which checks azure key vault:

settings_args > envs > dotenv > secret_directory > azure_keyvault > defaults

Install:

pip install pydantic-azure-secrets

Example:

# Example for GitHub REST API

from pydantic import HttpUrl, SecretStr
from pydantic_azure_secrets import AzureVaultSettings


class GitHubBasic(AzureVaultSettings):
    url: HttpUrl = "https://api.github.com/user"
    username: str
    token: SecretStr

    class Config:
        env_prefix = "github_" 
        azure_keyvault = <your_keyvault_URI> # e.g. "https://pydantic-test-kv.vault.azure.net/"

github_settings = GitHubBasic()
# GitHubBasic(url=HttpUrl('https://github.com', scheme='https', host='github.com', tld='com', host_type='domain'), username='kewtree1408', token=SecretStr('**********'))

See more examples in the example.py

Authentification

Authentification for azure keyvault is the same as for SDK

Before using the library, please log in to your Azure subscription with one of the following methods

  • az login
  • environment variables: AZURE_CLIENT_ID, AZURE_CLIENT_PASSWORD, AZURE_TENANT_ID see more

Run tests

tox

TODO: