Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Error while opening blob containers. Local storage with Azurite. #3313

Closed
MrKoster opened this issue Jul 29, 2020 · 2 comments
Closed

Error while opening blob containers. Local storage with Azurite. #3313

MrKoster opened this issue Jul 29, 2020 · 2 comments
Labels
🪲 retrieve child resource error Issue is do to "retrieve child resource" error 🔌 certs Related to SSL certificate errors ⚙️ emulator Related to local emulators ⚙️ proxy Related to proxy settings ✅ no response No customer response

Comments

@MrKoster
Copy link

Storage Explorer Version: 1.14.2
Build Number: 20200715.2
Platform/OS: Windows 10
Architecture: x64
Regression From: not working in previous versions

Bug Description

I have a docker Azurite image set up locally with Desktop Docker (wIndows 10).
Everything set up according to official Azurite docs: https://github.com/Azure/Azurite.
Everything works correctly when i try to connect to storage account with http (by choosing connect to azure storage -> attach to local emulator).

Unfortunately, there is a problem when connecting with https:
I managed to create connection to this local (azurite) storage account, but when i open list of blob containers there, there is an error:

"
Unable to retrieve child resources.

Details:
["FetchError:request to https://127.0.0.1:11000/devstoreaccount1/?include=metadata&comp=list failed, reason: write EPROTO 234407848:error:100000f7:SSL routines:OPENSSL_internal:WRONG_VERSION_NUMBER:../../third_party/boringssl/src/ssl/tls_record.cc:242:\n"]
"

Of course, i added cert to storage explorer by "import certificates", so that's not the issue.

Steps to Reproduce

  1. Set up Azurite exacly like in thier documentatin (https://github.com/Azure/Azurite), so get docker image, dock it, generate certs, and run azurite (only thing i changed was port 10000 to 11000, but later i checked, and it didn't work with neither.
  2. Run Azure Storage Explorer
  3. Import certificate to storage explorer by clicking edit -> ssl certificates -> import certificates, then restart storage explorer
  4. Right click on storage accounts -> connect to azure storage -> use connection string
  5. Provide connection string and any name for connection, For local, default AccountKey is used (port 10000 is default, but i used 11000 instead. I don't think that's the issue tho, because result is the same or both options):
    "
    DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://127.0.0.1:11000/devstoreaccount1;QueueEndpoint=https://127.0.0.1:11001/devstoreaccount1;
    "
  6. After creating this connection, try to open "Blob containers" list for this connection.
  7. Error happens

Expected Experience

I expect to be able to connect to local storage account set up with Azurite (docker image) not only with http, but also with https.

Actual Experience

Azurite on docker:
image
Azure Storage Explorer connection creation:
image
Errors:
image
image

Additional Context

Azurite
Docker for Desktop
Tried to generate certs:

  • pfx, pem, inside windows, inside docker container, nothing works
    I'm out of ideas what might be wrong, summing up, http works, https doesn't.
@MRayermannMSFT MRayermannMSFT added ⚙️ emulator Related to local emulators ⚙️ proxy Related to proxy settings 🔌 certs Related to SSL certificate errors labels Aug 3, 2020
@JasonYeMSFT
Copy link
Contributor

As the error message suggests, the cert you generated have "wrong version number" and thus cannot be used by Azurite. Could you share your exact steps about how you generated the certificate, what parameters do you use during the process. When I learned how to setup Azurite with https, there are pitfalls in the cert generation process so it would be helpful to know these details.

By the way, in order to get it working, could you try the setup steps in this blog: Use HTTPS and DefaultAzureCredential with Azurite for Local Azure Storage Emulation. It is written by an internal engineer working on Azurite and his cert creation method (via npm module "mkcert") is the easiest one I have seen so far.

@MRayermannMSFT MRayermannMSFT added the 🪲 retrieve child resource error Issue is do to "retrieve child resource" error label Aug 5, 2020
@MRayermannMSFT
Copy link
Member

Closing due to lack of response. Please open a new issue if you are still having problems.

@MRayermannMSFT MRayermannMSFT added the ✅ no response No customer response label Aug 31, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🪲 retrieve child resource error Issue is do to "retrieve child resource" error 🔌 certs Related to SSL certificate errors ⚙️ emulator Related to local emulators ⚙️ proxy Related to proxy settings ✅ no response No customer response
Projects
None yet
Development

No branches or pull requests

3 participants