AccessPolicy Class
Access Policy class used by the set and get access policy methods in each service.
A stored access policy can specify the start time, expiry time, and permissions for the Shared Access Signatures with which it's associated. Depending on how you want to control access to your resource, you can specify all of these parameters within the stored access policy, and omit them from the URL for the Shared Access Signature. Doing so permits you to modify the associated signature's behavior at any time, as well as to revoke it. Or you can specify one or more of the access policy parameters within the stored access policy, and the others on the URL. Finally, you can specify all of the parameters on the URL. In this case, you can use the stored access policy to revoke the signature, but not to modify its behavior.
Together the Shared Access Signature and the stored access policy must include all fields required to authenticate the signature. If any required fields are missing, the request will fail. Likewise, if a field is specified both in the Shared Access Signature URL and in the stored access policy, the request will fail with status code 400 (Bad Request).
- Inheritance
-
azure.storage.blob._models.AccessPolicyAccessPolicy
Constructor
AccessPolicy(permission=None, expiry=None, **kwargs)
Parameters
Name | Description |
---|---|
permission
|
str or
<xref:azure.storage.datalake.FileSystemSasPermissions>
The permissions associated with the shared access signature. The user is restricted to operations allowed by the permissions. Required unless an id is given referencing a stored access policy which contains this field. This field must be omitted if it has been specified in an associated stored access policy. Default value: None
|
expiry
|
The time at which the shared access signature becomes invalid. Required unless an id is given referencing a stored access policy which contains this field. This field must be omitted if it has been specified in an associated stored access policy. Azure will always convert values to UTC. If a date is passed in without timezone info, it is assumed to be UTC. Default value: None
|
Keyword-Only Parameters
Name | Description |
---|---|
start
|
The time at which the shared access signature becomes valid. If omitted, start time for this call is assumed to be the time when the storage service receives the request. The provided datetime will always be interpreted as UTC. |
Methods
as_dict |
Return a dict that can be serialized using json.dump. Advanced usage might optionally use a callback as parameter: Key is the attribute name used in Python. Attr_desc is a dict of metadata. Currently contains 'type' with the msrest type and 'key' with the RestAPI encoded key. Value is the current value in this object. The string returned will be used to serialize the key. If the return type is a list, this is considered hierarchical result dict. See the three examples in this file:
If you want XML serialization, you can pass the kwargs is_xml=True. |
deserialize |
Parse a str using the RestAPI syntax and return a model. |
enable_additional_properties_sending | |
from_dict |
Parse a dict using given key extractor return a model. By default consider key extractors (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor and last_rest_key_case_insensitive_extractor) |
is_xml_model | |
serialize |
Return the JSON that would be sent to server from this model. This is an alias to as_dict(full_restapi_key_transformer, keep_readonly=False). If you want XML serialization, you can pass the kwargs is_xml=True. |
as_dict
Return a dict that can be serialized using json.dump.
Advanced usage might optionally use a callback as parameter:
Key is the attribute name used in Python. Attr_desc is a dict of metadata. Currently contains 'type' with the msrest type and 'key' with the RestAPI encoded key. Value is the current value in this object.
The string returned will be used to serialize the key. If the return type is a list, this is considered hierarchical result dict.
See the three examples in this file:
attribute_transformer
full_restapi_key_transformer
last_restapi_key_transformer
If you want XML serialization, you can pass the kwargs is_xml=True.
as_dict(keep_readonly: bool = True, key_transformer: ~typing.Callable[[str, ~typing.Dict[str, ~typing.Any], ~typing.Any], ~typing.Any] = <function attribute_transformer>, **kwargs: ~typing.Any) -> MutableMapping[str, Any]
Parameters
Name | Description |
---|---|
keep_readonly
|
If you want to serialize the readonly attributes Default value: True
|
key_transformer
|
<xref:function>
A key transformer function. |
Returns
Type | Description |
---|---|
A dict JSON compatible object |
deserialize
Parse a str using the RestAPI syntax and return a model.
deserialize(data: Any, content_type: str | None = None) -> ModelType
Parameters
Name | Description |
---|---|
data
Required
|
A str using RestAPI structure. JSON by default. |
content_type
|
JSON by default, set application/xml if XML. Default value: None
|
Returns
Type | Description |
---|---|
<xref:ModelType>
|
An instance of this model |
Exceptions
Type | Description |
---|---|
DeserializationError if something went wrong
|
enable_additional_properties_sending
enable_additional_properties_sending() -> None
from_dict
Parse a dict using given key extractor return a model.
By default consider key extractors (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor and last_rest_key_case_insensitive_extractor)
from_dict(data: Any, key_extractors: Callable[[str, Dict[str, Any], Any], Any] | None = None, content_type: str | None = None) -> ModelType
Parameters
Name | Description |
---|---|
data
Required
|
A dict using RestAPI structure |
key_extractors
|
<xref:function>
A key extractor function. Default value: None
|
content_type
|
JSON by default, set application/xml if XML. Default value: None
|
Returns
Type | Description |
---|---|
<xref:ModelType>
|
An instance of this model |
Exceptions
Type | Description |
---|---|
DeserializationError if something went wrong
|
is_xml_model
is_xml_model() -> bool
serialize
Return the JSON that would be sent to server from this model.
This is an alias to as_dict(full_restapi_key_transformer, keep_readonly=False).
If you want XML serialization, you can pass the kwargs is_xml=True.
serialize(keep_readonly: bool = False, **kwargs: Any) -> MutableMapping[str, Any]
Parameters
Name | Description |
---|---|
keep_readonly
|
If you want to serialize the readonly attributes Default value: False
|
Returns
Type | Description |
---|---|
A dict JSON compatible object |
Attributes
expiry
The time at which the shared access signature becomes invalid.
expiry: 'datetime' | str | None
permission
The permissions associated with the shared access signature. The user is restricted to operations allowed by the permissions.
permission: ContainerSasPermissions | str | None
start
The time at which the shared access signature becomes valid.
start: 'datetime' | str | None
Azure SDK for Python