Search code examples
azure-blob-storageazure-managed-identityazure-maps

Access data from Azure Maps Data Registry using Azure Maps Web SDK


As described in this blog post the Azure Maps Data Registry allows to access geographical data stored in an Azure Blob Storage account from Azure maps.

Microsoft provides a documentation on how to set up the connection between the Azure Blob Storage and Azure Maps. However, they do not provide any documentation on how to access the data from the Azure Maps Web SDK. The API documentation only explains how to register, list and unregister files.

Could someone share examples on how to read data from the Data Registry using the Azure Maps Web SDK?


To ensure my Blob Storage is correctly connected to Azure Maps I listed all registered files (using "https://eu.atlas.microsoft.com/dataRegistries?api-version=2023-06-01&subscription-key={my-key}") and analyzed specific files using https://eu.atlas.microsoft.com/dataRegistries/{udid}?api-version=2023-06-01&subscription-key={my-key}. Everything seems to be set up correctly.

Additionally, I tried requests similar to the deprecated Azure Maps Data Service download request to access the content of the registered files. This did not lead to any results.

Furthermore, I tried to directly import data from the Blob Store (e.g., datasource.importDataFromUrl({URI})). Unsurprisingly, such requests were not granted. Setting up CORS to allowed access from all sources did not help either.

I would assume that the Azure Maps Web SDK provides some import function for registered data that requires authentication. Unfortunately, I cannot find any documentation on this.


Solution

  • The data registry is only meant for data that will be used by Azure Maps to generate indoor maps or overlay data on static map tiles. The only way to access that data through Azure Maps is through indoor maps or overlaid on a static map tile. Direct access to the data is not made available for privacy and security reasons. If you want to host data and use it in Azure Maps, there are a lot of other ways to do that with Azure today (as files in your app, blog storage, database with web service...)