URL-адрес для доступа к частному блобу в хранилище Azure

2

Мы только начинаем работу с Azure Storage. В нашем сценарии мы загружаем в частные капли, которые позже нам нужно получить непосредственно из нашего клиентского приложения, например изображений.

Есть ли способ адресовать частные капли в Azure Storage с URL-адресом, содержащим ключ доступа?

Просеивание документов MS, которые я смог найти до сих пор, - это простой доступ к URL через URI blob, например, как указано в свойстве URI экземпляра CloudBlockBlob при перечислении blobs через API.net.

Естественно, доступ к этому из веб-браузера невозможен из-за того, что blob не является общедоступным.
Однако можем ли мы присвоить URL-адрес, чтобы также включить ключ доступа, чтобы разрешить авторизованным клиентам доступ к блобу...?

  • 0
    Прочтите это: docs.microsoft.com/en-us/azure/storage/common/… Здесь описано использование токенов для предоставления доступа клиентам.
  • 0
    @kkirk Да, мне было интересно, и это не совсем применимо: «Вы можете использовать SAS, если хотите предоставить доступ к ресурсам в своей учетной записи хранения любому клиенту, не обладающему ключами доступа к вашей учетной записи хранения» - я сделать ключ доступа
Показать ещё 7 комментариев
Теги:
azure
azure-storage
azure-storage-blobs
blob

1 ответ

1

Это API для того, как вы читаете blobs из хранилища:

https://docs.microsoft.com/en-us/rest/api/storageservices/get-blob

Для передачи ключа доступа нет URL-параметра, а только значение заголовка " Authorization. Таким образом, вы можете сделать запрос вручную и, например, добавить результирующие данные в качестве кодированного изображения base64. Я бы посоветовал ему, если это вообще возможно.

Вы также должны знать, что, передавая свой ключ доступа клиенту, вы фактически делаете свой блоб открытым в любом случае. Вы поставили бы ваши данные на более высокий риск, чем анонимный доступ, поскольку ключ доступа позволяет выполнять больше операций, чем анонимный доступ. Это также будет справедливо для вашего приложения-объекта, хотя его гораздо более запутанный там. SAS - путь туда - создать бэкэнд-сервис, который создает определенный набор токенов SAS для заданных ресурсов. Однако гораздо больше усилий, чем просто запутывание ключа доступа.

См. "Возможности, доступные анонимным пользователям":

https://docs.microsoft.com/en-us/azure/storage/blobs/storage-manage-access-to-resources

  • 0
    Спасибо за ответ. Однако использование https для связи с хранилищем Azure должно снизить риск, не так ли?
  • 0
    Это защитит только связь между вашим устройством и сервером. Например, если вы посмотрите на консоль разработчика Chrome, вы также можете увидеть вызовы https и их заголовки. Кроме того, если URL является частью некоторого HTML, его можно просмотреть, посмотрев на исходный код страницы.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню