Skip to main content

Cyware Orchestrate

Azure Storage 2.0.0

App Vendor: Microsoft

App Category: IT Services

Connector Version: 2.1.1

API Version: 12.19.1

About App

The Azure Storage app lets security teams integrate with the Azure Storage platform, offering scalable cloud storage for data, virtual machine disks, file systems, messaging, and NoSQL databases to securely manage and store data.

The Azure Storage app is configured with Cyware Orchestrate to perform the following actions:

Action Name

Description

Create Blob

This action creates a new blob in Azure storage.

Create Container

This action creates a container in the specified account.

Delete Blob

This action deletes a blob in the specified container.

Delete Container

This action marks the specified container for deletion. The container and any blobs contained within it are later deleted during garbage collection.

Download Blob

This action downloads the content of a blob and stores it in the local system.

Get Blob Properties

This action retrieves all user-defined metadata, standard HTTP properties, and system properties for the blob. It does not return the content of the blob.

Get Container Access Policy

This action retrieves the permissions for the specified container, indicating whether the container data can be accessed publicly.

Get Container Properties

This action retrieves all user-defined metadata and system properties for the specific container.

List Blobs in Container

This action retrieves the list of all the blobs in a container.

List Blob Tags

This action retrieves the tags associated with the specified blob.

List Containers

This action retrieves a list of containers.

Set Blob Properties

This action sets the system properties for the specified blob.

Set Blob Tags

This action sets tags for the specified blob, replacing all existing tags if applicable. It can also be used to remove tags from the blob.

Set Container Access Policy

This action sets permissions for the specified container or applies stored access policies.

Update Blob

This action updates the content of a blob.

Configuration Parameters

The following configuration parameters are required for the Azure Storage app to communicate with the Azure Storage enterprise application. The parameters can be configured by creating instances in the app.

Parameter

Description

Field Type

Required/Optional

Comments

Connection String

Enter the connection string for authentication.

Example*

Text

Required

To retrieve a connection string, you must either have a storage account set up or create a new one. While creating a storage account, provide the necessary details in the Basics tab, which includes Subscription, Resource group, Storage account name, and more. You can either customize the remaining settings according to your specific needs or use Microsoft’s default options. For more information, see Microsoft Azure Storage Documentation.

To retrieve the Connection String from Azure Portal, go to Storage account > Security + networking > Access keys and click Show keys. In the key1 section, locate the Connection string value.

Container Name

Enter a container name to test the connectivity and authentication credentials.

Example:

sample_container_name

Text

Required

*Example:

DefaultEndpointsProtocol=https;AccountName=sampleaccountname;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
Action: Create Blob

This action creates a blob in a container.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Data 

Enter the content of the blob.

Text

Required

Note

For the blob type PageBlob, ensure the content size is a multiple of 512 bytes. For more information, see Microsoft Azure Storage Documentation.

Container Name 

Enter the name of the container where the blob will be created.

Text

Required

You can retrieve container names using the action List Containers.

Blob Name 

Enter the name of the blob to create.

Text

Required

Blob Type 

Enter the type of the blob to create.

Text

Optional

Allowed values:

BlockBlob, PageBlob, AppendBlob.

Default value:

BlockBlob

Extra Params 

Enter the extra parameters to create a blob.

Key Value

Optional

Allowed keys:

length, tags, content_settings, validate_content, lease, if_modified_since, if_unmodified_since, etag, match_condition, if_tags_match_condition, premium_page_blob_tier, standard_blob_tier, immutability_policy, legal_hold, maxsize_condition, max_concurrency, cpk, encryption_scope, encoding, progress_hook, timeout

Example Request 

[
  {
    "blob_name": "Sample Blob",
    "blob_type": "BlockBlob",
    "blob_content": "This is an example for sample content.",
    "extra_params": {},
    "container_name": "creatingblob"
  }
]
Action: Create Container

This action creates a container in the specified account.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the container name.

Example:

Sample Container Name

Text

Required

The container name must be a valid DNS name, 3 to 63 characters long, containing only lowercase letters, numbers, and hyphens (-), starting or ending with a letter or number, with no consecutive hyphens.

Metadata

Enter details (metadata) of the container in key-value format.

Example:

{Category:test}

Key Value

Optional

Public Access

Enter the level of public access.

Example:

blob

Text

Optional

Allowed values:

blob, container

Extra Params

Enter the additional query parameters to create the container.

Key Value

Optional

Allowed keys:

container_encryption_scope, timeout

Example Request

[
  {
    "metadata": {},
    "extra_params": {},
    "container_name": "Sample Container Name"
  }
]
Action: Delete Blob

This action deletes a blob in the specified container.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Container Name 

Enter the container name from which to delete the blob.

Example:

Sample container name

Text

Required

You can retrieve container names using the action List Containers.

Blob Name 

Enter the name of the blob to delete.

Example:

Sample Blob Name

Text

Required

You can retrieve blob names using the action List Blobs in Container.

Extra Params 

Enter the extra parameters to pass to the API.

Key Value

Optional

Allowed keys:

delete_snapshots, version_id, lease, if_modified_since, if_unmodified_since, etag, match_condition, if_tags_match_condition, timeout

Example Request 

[
  {
    "blob_name": "Sample Blob Name",
    "extra_params": {},
    "container_name": "Sample Container Name"
  }
]
Action: Delete Container

This action marks the specified container for deletion. The container and any blobs contained within it are later deleted during garbage collection.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the name of the container to delete.

Text

Required

You can retrieve the container name using the Action: List Containers.

Container Lease

Enter the lease ID if the container has an active lease. Ensure the lease is active and matches the specified lease ID.

Text

Optional

Extra Params

Enter the additional query parameters to delete the container.

Key Value

Optional

Allowed keys:

if_modified_since, if_unmodified_since, match_condition, etag, timeout

Example Request

[
  {
    "extra_params": {},
    "container_name": "Sample Container Name"
  }
]
Action: Download Blob

This action downloads the content of a blob and stores it in the local system.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Container Name 

Enter the container name that contains the blob.

Text

Required

You can retrieve container names using the action List Containers.

Blob Name 

Enter the blob name to download the contents.

Text

Required

You can retrieve blob names using the action List Blobs in Container.

File Name 

Enter a local file name to save the contents.

Text

Required

Offset

Enter the starting byte position to download the section of the blob.

Example:

25

Integer

Optional

You must set this if length is specified.

Length

Enter the number of bytes to read from the blob section.

Example:

4

Integer

Optional

Extra Params 

Enter the extra parameters to download the blob content.

Key Value

Optional

Allowed keys:

version_id, validate_content, lease, length, if_modified_since, if_unmodified_since, etag, match_condition, if_tags_match_condition, cpk, max_concurrency, encoding, progress_hook, timeout

Example Request 

[
  {
    "blob_name": "Sample Blob Name",
    "file_name": "page.txt",
    "extra_params": {},
    "container_name": "creatingblob"
  }
]
Action: Get Blob Properties

This action retrieves all user-defined metadata, standard HTTP properties, and system properties for the blob. It does not return the content of the blob.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the blob container name to retrieve the properties of the blob.

Text

Required

You can retrieve the container name using the Action: List Containers.

Blob Name

Enter the blob name to get properties.

Text

Required

You can retrieve the blob name using the Action: List Blobs in Container.

Blob Lease

Enter the lease ID of the blob. If the blob has an active lease, you must provide a valid lease ID.

Text

Optional

Extra Params

Enter the additional query parameters to set blob tags.

Key Value

Optional

Allowed keys:

version_id, if_modified_since, if_unmodified_since, match_condition, etag, if_tags_match_condition, cpk, timeout

Example Request

[
  {
    "blob_name": "Sample Blob Name",
    "extra_params": {
      "timeout": "30"
    },
    "container_name": "Sample Container Name"
  }
]
Action: Get Container Access Policy

This action retrieves the permissions for the specified container, indicating whether the container data can be accessed publicly.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the blob container name.

Text

Required

You can retrieve the container name using the Action: List Containers.

Container Lease

Enter the lease ID of the container. If the container has an active lease, you must provide a valid lease ID.

Text

Optional

Server Timeout

Enter the server-side timeout in seconds.

Example:

30

Integer

Optional

Example Request

[
  {
    "container_name": "Sample Container Name",
    "server_timeout": "30"
  }
]
Action: Get Container Properties

This action retrieves all user-defined metadata and system properties for the specified container.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Container Name 

Enter the container name to retrieve its properties.

Text

Required

You can retrieve the container name using the Action: List Containers.

Container Lease 

Enter the lease ID if the container has an active lease. Ensure the lease is active and matches the specified lease ID.

Text

Optional

Server Timeout 

Enter the server-side timeout for the operation in seconds.

Example:

30

Integer

Optional

Example Request 

[
  {
    "container_name": "Sample Container Name",
    "server_timeout": "20"
  }
]
Action: List Blobs in Container

This action retrieves the list of all the blobs in a container.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Container Name 

Enter the container name to get the list of blobs in a container.

Text

Required

You can retrieve container names using the action LIst Containers.

Timeout 

Enter the timeout value (in seconds) for the request.

Integer

Optional

Default value:

15

Extra Params 

Enter the extra parameters to list blobs.

Key Value

Optional

Allowed keys:

name_starts_with, include

Example Request 

[
  {
    "extra_params": {},
    "container_name": "creatingblob"
  }
]
Action: List Blob Tags

This action retrieves the tags associated with the specified blob.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the name of the blob container.

Text

Required

You can retrieve the container name using the Action: List Containers.

Blob Name

Enter the name of the blob.

Example:

blobname

Text

Required

You can retrieve the blob name using the Action: List Blobs in Container.

Blob Lease

Enter the lease ID for the blob. If the blob has an active lease, you must provide a valid lease ID.

Text

Optional

Extra Params

Enter the additional query parameters to retrieve blob tags.

Key Value

Optional

Allowed keys:

version_id, if_tags_match_condition, timeout

Example Request

[
  {
    "blob_name": "Sample Blob Name",
    "extra_params": {
      "timeout": "20"
    },
    "container_name": "Sample Container Name"
  }
]
Action: List Containers

This action retrieves a list of containers.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Extra Params

Enter the extra parameters to pass to the API.

Key Value

Optional

Allowed keys:

name_starts_with, include_metadata, include_deleted, include_system, results_per_page, timeout

Include Metadata

Choose true to retrieve the container's metadata.

Boolean

Optional

Default value:

False

Name Prefix

Enter the beginning of the blob name to filter the results. Only blobs with names starting with this prefix will be included.

Text

Optional

Example Request

[
  {
    "extra_params": {},
    "include_metadata": false
  }
]
Action: Set Blob Properties

This action sets the system properties for the specified blob.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the name of the container where the blob is stored.

Text

Required

You can retrieve the container name using the Action: List Containers.

Blob Name

Enter the name of the blob to update properties for.

Text

Required

You can retrieve the blob name using the Action: List Blobs in Container.

Content Type

Enter the content type of the blob.

Example:

text/plain

Text

Optional

Default value:

None

Blob Content Encoding

Enter the encoding for the content. This is used to specify the compression algorithm of the blob content.

Text

Optional

Blob Content Language

Enter the language of the content. This is used to describe the human languages of the blob content.

Example:

en-US

Text

Optional

Blob Content Disposition

Enter blob content disposition. It conveys additional information about how to process the response payload and can also be used to attach additional metadata.

Example:

attachment

Text

Optional

Blob Cache Control

Enter the cache control string for the blob. This indicates directives for caching in both requests and responses.

Text

Optional

Blob Content MD5

Enter MD5 hash value for content integrity checks.

List

Optional

Blob Lease

Enter the lease ID for the blob. If the blob has an active lease, you must provide a valid lease ID.

Text

Optional

Extra Params

Enter the additional query parameters to set blob properties.

Key Value

Optional

Allowed keys:

if_modified_since, if_unmodified_since, etag, match_condition, if_tags_match_condition, timeout

Example Request

[
  {
    "blob_name": "Sample Blob Name",
    "extra_params": {},
    "container_name": "Sample Container Name",
    "blob_content_type": "text/plain",
    "blob_content_language": "en-US"
  }
]
Action: Set Blob Tags

This action sets tags for the specified blob, replacing all existing tags if applicable. It can also be used to remove tags from the blob.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the name of the blob container.

Text

Required

You can retrieve the container name using the Action: List Containers.

Blob Name

Enter the blob name.

Text

Required

You can retrieve the blob name using the Action: List Blobs in Container.

Blob Tags

Enter the tags for the blob as key-value pairs.

Note

You can add up to 10 tags, with keys and values being case-sensitive.

Key Value

Optional

Each tag key must be between 1 and 128 characters, and each tag value can be between 0 and 256 characters.

Allowed characters:

letters, digits, spaces, plus (+), minus (-), period (.), solidus (/), colon (:), equals (=), underscore (_)

Blob Lease

Enter the lease ID of the blob. If the blob has an active lease, you must provide a valid lease ID.

Text

Optional

Overwrite

Select true to overwrite the tags of the blob. If you choose false, the content is appended.

Boolean

Optional

Default value:

false

Extra Params

Enter the additional query parameters to set blob tags.

Key Value

Optional

Allowed keys:

version_id, validate_content, if_tags_match_condition, timeout

Example Request

[
  {
    "blob_name": "Sample Blob Name",
    "blob_tags": {
      "sample_tag_key": "sample_tag_value"
    },
    "extra_params": {
      "timeout": "4"
    },
    "container_name": "Sample Container Name"
  }
]
Action: Set Container Access Policy

This action sets permissions for the specified container or applies stored access policies.

Action Input Parameters

Parameter

Description

Field Type

Required/Optional

Comments

Container Name

Enter the blob container name.

Text

Required

You can retrieve the container name using the Action: List Containers.

Signed Identifiers

Enter the signed identifiers to define stored access policies.

Example:

{"policy1": {"permission": "rw","start": 1710025200, "expiry": 1710630000},"policy2": {"permission": "r","start": 1710021600,"expiry": 1710294000}}

Key Value

Required

An empty dictionary will clear the access policies set on the service.

Public Access

Enter the level of public access.

Text

Required

Allowed values:

container, blob

Container Lease

Enter the lease ID of the container. If the container has an active lease, you must provide a valid lease ID.

Text

Optional

Extra Params

Enter the extra parameters to set the container access policy.

Key Value

Optional

Allowed keys:

if_modified_since, if_unmodified_since, timeout

Example Request

[
  {
    "extra_params": {
      "timeout": "20"
    },
    "public_access": "blob",
    "container_name": "Sample Container Name",
    "signed_identifiers": {
      "policy1": {
        "permission": "rw",
        "start": 1710025200,
        "expiry": 1710630000
      },
      "policy2": {
        "permission": "rd",
        "start": 1710025200,
        "expiry": 1710630000
      },
      "policy3": {
        "permission": "rw",
        "start": 1710025200,
        "expiry": 1710630000
      },
      "policy4": {
        "permission": "rw",
        "start": 1710025200,
        "expiry": 1710630000
      }
    }
  }
]
Action: Update Blob

This action updates the content of a blob.

Action Input Parameters 

Parameter

Description

Field Type

Required/Optional

Comments

Data 

Enter the content to add to the blob.

Text

Required

Note

For the blob type PageBlob, ensure the content size is a multiple of 512 bytes. For more information, see Microsoft Azure Storage Documentation.

Container Name 

Enter the name of the container where the blob is located.

Text

Required

You can retrieve container names using the action List Containers.

Blob Name 

Enter the name of the blob whose contents you want to update.

Text

Required

You can retrieve blob names using the action List Blobs in Container.

Blob Type 

Enter the type of the blob.

Text

Optional

Allowed values:

BlockBlob, PageBlob, and AppendBlob

Default value:

BlockBlob

Overwrite 

Select true to overwrite the contents of the blob. If you choose false, the content is appended.

Boolean

Optional

Default value:

false

Extra Params 

Enter the extra parameters to update the blob.

Key Value

Optional

Allowed keys:

length, tags, content_settings, validate_content, lease, if_modified_since, if_unmodified_since, etag, match_condition, if_tags_match_condition, premium_page_blob_tier, standard_blob_tier, immutability_policy, legal_hold, maxsize_condition, max_concurrency, cpk, encryption_scope, encoding, progress_hook, timeout

Example Request 

[
  {
    "blob_name": "Sample Blob Name",
    "blob_type": "BlockBlob",
    "overwrite": false,
    "blob_content": "This is the updated content.",
    "extra_params": {},
    "container_name": "creatingblob"
  }
]