Metadata-Version: 2.4
Name: azure-mgmt-resource-policy
Version: 1.0.0b3
Summary: Microsoft Azure Policy Management Client Library for Python
Author-email: Microsoft Corporation <azpysdkhelp@microsoft.com>
License-Expression: MIT
Project-URL: repository, https://github.com/Azure/azure-sdk-for-python
Keywords: azure,azure sdk
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: isodate>=0.6.1
Requires-Dist: azure-mgmt-core>=1.6.0
Requires-Dist: typing-extensions>=4.6.0
Dynamic: license-file

# Microsoft Azure SDK for Python

This is the Microsoft Azure Resource Policy Management Client Library.
This package has been tested with Python 3.10+.
For a more complete view of Azure libraries, see the [azure sdk python release](https://aka.ms/azsdk/python/all).

## _Disclaimer_

_Azure SDK Python packages support for Python 2.7 has ended 01 January 2022. For more information and questions, please refer to https://github.com/Azure/azure-sdk-for-python/issues/20691_

## Getting started

### Prerequisites

- Python 3.10+ is required to use this package.
- [Azure subscription](https://azure.microsoft.com/free/)

### Install the package

```bash
pip install azure-mgmt-resource-policy
pip install azure-identity
```

### Authentication

By default, [Azure Active Directory](https://aka.ms/awps/aad) token authentication depends on correct configuration of the following environment variables.

- `AZURE_CLIENT_ID` for Azure client ID.
- `AZURE_TENANT_ID` for Azure tenant ID.
- `AZURE_CLIENT_SECRET` for Azure client secret.

In addition, Azure subscription ID can be configured via environment variable `AZURE_SUBSCRIPTION_ID`.

With above configuration, client can be authenticated by following code:

```python
from azure.identity import DefaultAzureCredential
from azure.mgmt.resource.policy import PolicyClient
import os

sub_id = os.getenv("AZURE_SUBSCRIPTION_ID")
client = PolicyClient(credential=DefaultAzureCredential(), subscription_id=sub_id)
```

## Examples

Code samples for this package can be found at:
- [Search Resource Policy Management](https://docs.microsoft.com/samples/browse/?languages=python&term=Getting%20started%20-%20Managing&terms=Getting%20started%20-%20Managing) on docs.microsoft.com
- [Azure Python Mgmt SDK Samples Repo](https://aka.ms/azsdk/python/mgmt/samples)


## Troubleshooting

## Next steps

## Provide Feedback

If you encounter any bugs or have suggestions, please file an issue in the
[Issues](https://github.com/Azure/azure-sdk-for-python/issues)
section of the project. 

# Release History

## 1.0.0b3 (2026-05-26)

### Features Added

  - Client `PolicyClient` added method `send_request`
  - Client `PolicyClient` added operation group `policy_enrollments`
  - Client `PolicyClient` added operation group `policy_exemptions`
  - Client `PolicyClient` added operation group `variables`
  - Client `PolicyClient` added operation group `variable_values`
  - Model `DataPolicyManifest` added property `system_data`
  - Model `ExternalEvaluationEndpointInvocationResult` added property `endpoint_kind`
  - Model `ExternalEvaluationEndpointInvocationResult` added property `policy_action`
  - Model `ExternalEvaluationEndpointInvocationResult` added property `policy_evaluation_details`
  - Model `ExternalEvaluationEndpointInvocationResult` added property `additional_info`
  - Model `PolicyTokenResponse` added property `request_details`
  - Enum `SelectorKind` added member `GROUP_PRINCIPAL_ID`
  - Enum `SelectorKind` added member `USER_PRINCIPAL_ID`
  - Added enum `AssignmentScopeValidation`
  - Added model `DataManifestResourceFunctionsDefinition`
  - Added enum `ExemptionCategory`
  - Added model `ExtensionResource`
  - Added enum `PolicyAction`
  - Added model `PolicyEnrollment`
  - Added model `PolicyEnrollmentProperties`
  - Added model `PolicyEnrollmentUpdate`
  - Added model `PolicyEnrollmentUpdateProperties`
  - Added model `PolicyExemption`
  - Added model `PolicyExemptionProperties`
  - Added model `PolicyExemptionUpdate`
  - Added model `PolicyExemptionUpdateProperties`
  - Added model `PolicyTokenEvaluatedRequestDetails`
  - Added model `PolicyVariableColumn`
  - Added model `PolicyVariableProperties`
  - Added model `PolicyVariableValueColumnValue`
  - Added model `PolicyVariableValueProperties`
  - Added model `SelfServeExemptionSettings`
  - Added model `Variable`
  - Added model `VariableValue`

### Breaking Changes

  - This version introduces new hybrid models which have dual dictionary and model nature. Please follow https://aka.ms/azsdk/python/migrate/hybrid-models for migration.
  - Model `PolicyLogInfo` deleted property `policy_set_definition_display_name`/`policy_set_definition_category`/`policy_definition_display_name`/`policy_definition_group_names`/`policy_assignment_display_name`/`resource_location`/`ancestors`/`compliance_reason_code`/`policy_exemption_ids` to match actual service behavior
  - Method `PolicyAssignmentsOperations.get` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicyAssignmentsOperations.get_by_id` deleted or renamed its parameter `expand` of kind `positional_or_keyword`
  - Method `PolicyAssignmentsOperations.list` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicyAssignmentsOperations.list_for_management_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicyAssignmentsOperations.list_for_resource` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicyAssignmentsOperations.list_for_resource_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.get` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.get_at_management_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.get_built_in` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.list` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.list_built_in` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionVersionsOperations.list_by_management_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.get` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.get_at_management_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.get_built_in` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.list` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.list_built_in` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`
  - Method `PolicySetDefinitionsOperations.list_by_management_group` changed its parameter `expand` from `positional_or_keyword` to `keyword_only`

## 1.0.0b2 (2026-02-28)

### Features Added

  - Client `PolicyClient` added operation group `policy_tokens`
  - Enum `EnforcementMode` added member `ENROLL`
  - Model `ErrorResponse` added property `error`
  - Enum `OverrideKind` added member `DEFINITION_VERSION`
  - Model `PolicyAssignment` added property `assignment_type`
  - Model `PolicyAssignment` added property `instance_id`
  - Model `PolicyDefinition` added property `external_evaluation_enforcement_settings`
  - Model `PolicyDefinitionVersion` added property `external_evaluation_enforcement_settings`
  - Added enum `AssignmentType`
  - Added model `ErrorDetail`
  - Added enum `ExternalEndpointResult`
  - Added model `ExternalEvaluationEndpointInvocationResult`
  - Added model `ExternalEvaluationEndpointSettings`
  - Added model `ExternalEvaluationEnforcementSettings`
  - Added model `PolicyLogInfo`
  - Added model `PolicyTokenOperation`
  - Added model `PolicyTokenRequest`
  - Added model `PolicyTokenResponse`
  - Added enum `PolicyTokenResult`
  - Added model `ProxyResource`
  - Added model `Resource`

### Breaking Changes

  - Deleted client operation group `PolicyClient.policy_exemptions`
  - Deleted client operation group `PolicyClient.variables`
  - Deleted client operation group `PolicyClient.variable_values`
  - Model `ErrorResponse` deleted its instance variable `code`
  - Model `ErrorResponse` deleted its instance variable `message`
  - Model `ErrorResponse` deleted its instance variable `target`
  - Model `ErrorResponse` deleted its instance variable `details`
  - Model `ErrorResponse` deleted its instance variable `additional_info`
  - Property `value` of model `PolicyAssignmentListResult` is required
  - Property `value` of model `PolicyDefinitionListResult` is required
  - Property `value` of model `PolicyDefinitionVersionListResult` is required
  - Property `value` of model `PolicySetDefinitionListResult` is required
  - Property `value` of model `PolicySetDefinitionVersionListResult` is required
  - Deleted model `AssignmentScopeValidation`
  - Deleted model `ExemptionCategory`
  - Deleted model `PolicyExemption`
  - Deleted model `PolicyExemptionUpdate`
  - Deleted model `PolicyVariableColumn`
  - Deleted model `PolicyVariableValueColumnValue`
  - Deleted model `Variable`
  - Deleted model `VariableValue`

## 1.0.0b1 (2026-02-04)

### Other Changes

  - Initial version
