{"id":1927,"library":"azure-mgmt-appconfiguration","title":"Azure App Configuration Management Client Library for Python","description":"The `azure-mgmt-appconfiguration` library provides a client for managing Azure App Configuration resources. It enables programmatic interaction with App Configuration stores, allowing operations like creating, updating, and deleting configuration stores. This package is part of the larger Azure SDK for Python and is currently at version 5.0.0, with a regular release cadence including both minor updates and major versions that may introduce breaking changes.","status":"active","version":"5.0.0","language":"en","source_language":"en","source_url":"https://github.com/Azure/azure-sdk-for-python","tags":["Azure","Cloud","App Configuration","Management","Microsoft Azure"],"install":[{"cmd":"pip install azure-mgmt-appconfiguration azure-identity","lang":"bash","label":"Install package and authentication library"}],"dependencies":[{"reason":"Required for Azure Active Directory token authentication.","package":"azure-identity","optional":false}],"imports":[{"symbol":"AppConfigurationManagementClient","correct":"from azure.mgmt.appconfiguration import AppConfigurationManagementClient"},{"symbol":"DefaultAzureCredential","correct":"from azure.identity import DefaultAzureCredential"}],"quickstart":{"code":"import os\nfrom azure.identity import DefaultAzureCredential\nfrom azure.mgmt.appconfiguration import AppConfigurationManagementClient\n\n# Set environment variables for authentication (Azure CLI, VS Code, environment variables)\n# AZURE_CLIENT_ID, AZURE_TENANT_ID, AZURE_CLIENT_SECRET or AZURE_FEDERATED_TOKEN_FILE\n# AZURE_SUBSCRIPTION_ID\n\nsubscription_id = os.environ.get(\"AZURE_SUBSCRIPTION_ID\", \"\")\nif not subscription_id:\n    raise ValueError(\"AZURE_SUBSCRIPTION_ID is not set in environment variables.\")\n\n# Authenticate using DefaultAzureCredential\n# This will try various methods like environment variables, managed identity, etc.\ncredential = DefaultAzureCredential()\n\n# Create a client for App Configuration Management\nclient = AppConfigurationManagementClient(credential=credential, subscription_id=subscription_id)\n\n# Example: List all App Configuration stores in the subscription\nprint(\"Listing App Configuration stores:\")\nfor store in client.configuration_stores.list():\n    print(f\"  - {store.name} (Resource Group: {store.resource_group})\")\n\nprint(\"Quickstart complete.\")","lang":"python","description":"Initializes the `AppConfigurationManagementClient` using `DefaultAzureCredential` for authentication and then lists all App Configuration stores within the specified Azure subscription. Ensure `AZURE_SUBSCRIPTION_ID` and authentication-related environment variables (`AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`) are set."},"warnings":[{"fix":"Review your API usage. If you require an older API version, pin `azure-mgmt-appconfiguration` to a version prior to 4.0.0. Otherwise, update your code to use the latest API surface.","message":"Starting from version 4.0.0, the package primarily targets only the latest API version available on Azure and removes APIs of older versions. If your application relies on a specific, non-latest API version, you must pin the package to a previous released version (e.g., `<4.0.0`).","severity":"breaking","affected_versions":"4.0.0 and later"},{"fix":"Update your code to use alternative methods for listing key values, such as `configuration_stores.list_key_values()` if available, or fetch key-values via the data plane SDK (`azure-appconfiguration`).","message":"In version 3.0.0, the operation `KeyValuesOperations.list_by_configuration_store` was removed, impacting users migrating from earlier versions who might have used this specific method.","severity":"breaking","affected_versions":"3.0.0 and later"},{"fix":"Migrate your authentication code to use classes from the `azure-identity` library, such as `DefaultAzureCredential`, `ManagedIdentityCredential`, or `ClientSecretCredential`. Ensure the parameter name is `credential`.","message":"For SDK versions 1.0.0b1 and newer, the credential system was completely revamped. Old authentication classes like `azure.common.credentials` or `msrestazure.azure_active_directory` are no longer supported. The `credential` parameter has also been renamed from `credentials`.","severity":"breaking","affected_versions":"1.0.0b1 and later"},{"fix":"Integrate Azure Key Vault with App Configuration using Key Vault references. Configure your applications to resolve these references at runtime.","message":"Storing sensitive information (secrets) directly in Azure App Configuration is not recommended. Instead, use Azure Key Vault to securely store secrets and then reference them from App Configuration. This provides hardware-level encryption and better secret management.","severity":"gotcha","affected_versions":"All versions"},{"fix":"Enable a Managed Identity for your Azure-hosted application and grant it the necessary roles (e.g., 'App Configuration Data Reader' or 'Contributor') on your App Configuration store. Use `ManagedIdentityCredential` or `DefaultAzureCredential` in your Python code.","message":"When deploying applications to Azure services (like Azure Kubernetes Service, App Service, or Azure Functions), it's highly recommended to use Managed Identities for authenticating with App Configuration. This eliminates the need to explicitly manage connection strings or client secrets in your application or environment variables, enhancing security.","severity":"gotcha","affected_versions":"All versions"}],"env_vars":null,"last_verified":"2026-04-09T00:00:00.000Z","next_check":"2026-07-08T00:00:00.000Z"}