Azurite icon indicating copy to clipboard operation
Azurite copied to clipboard

set_container_access_policy returns 400 Bad Request on a valid request

Open cloudtest-anon opened this issue 11 months ago • 3 comments

Which service(blob, file, queue, table) does this issue concern?

blob

Which version of the Azurite was used?

3.29.0

Where do you get Azurite? (npm, DockerHub, NuGet, Visual Studio Code Extension)

DockerHub

What's the Node.js version?

--

What problem was encountered?

API set_container_access_policy returns with 400 Bad Request on a valid request. The same request succeeds with Azure (Requests were made using the Python SDK).

Steps to reproduce the issue?

The following code should reproduce it

from azure.storage.blob import BlobServiceClient
from azure.storage.blob import PublicAccess
from azure.storage.blob import AccessPolicy

blob_service_client = BlobServiceClient.from_connection_string(f'{conn_string}')
container_client = blob_service_client.get_container_client('container')

container_client.create_container()
container_client.set_container_access_policy(signed_identifiers={'test': AccessPolicy()}, public_access=PublicAccess.Container)

azure.core.exceptions.HttpResponseError: Bad Request ErrorCode:None

If possible, please provide the debug log using the -d parameter, replacing <pathtodebuglog> with an appropriate path for your OS, or review the instructions for docker containers:

-d "<pathtodebuglog>"

Please be sure to remove any PII or sensitive information before sharing!
The debug log will log raw request headers and bodies, so that we can replay these against Azurite using REST and create tests to validate resolution.

Have you found a mitigation/solution?

cloudtest-anon avatar Mar 19 '24 19:03 cloudtest-anon

Hi @anna-mazhar , If possible, can you share Azurite debug log?

EmmaZhu avatar Mar 20 '24 03:03 EmmaZhu

Sure, here is the log generated with the code above: debug.log

cloudtest-anon avatar Mar 21 '24 03:03 cloudtest-anon

@anna-mazhar

From the debug log, we see the error is "containerAcl.AccessPolicy cannot be null or undefined." Could you share the user scenario why you are trying to put a null/undefined access policy the container?

blueww avatar Mar 22 '24 01:03 blueww