Доступ к большому двоичному объекту с еще одной защитой в Azure Android

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

Пример: установите пароль для доступа к большому двоичному объекту при его создании.

отправьте пароль, чтобы получить содержимое большого двоичного объекта.

Это возможно?

код извлекает большой двоичный объект без какой-либо аутентификации:

       for (ListBlobItem blobItem : container.listBlobs()) {
            // If the item is a blob, not a virtual directory
            if (blobItem instanceof CloudBlockBlob) {
                // Download the text
                CloudBlockBlob retrievedBlob = (CloudBlockBlob) blobItem;
                act.outputText(view, retrievedBlob.downloadText());
            }
        }

person Vji    schedule 30.03.2017    source источник


Ответы (1)


Хранилище BLOB-объектов поддерживает 3 уровня доступа: общедоступный, который обеспечивает анонимное чтение и вывод списка всех больших двоичных объектов в контейнере, чтение больших двоичных объектов, при котором анонимный запрос может читать большие двоичные объекты, но не отображать содержимое контейнера для поиска других, или нет общего доступа. Эти разрешения подробно описаны здесь:

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

Для ваших нужд я думаю, что подписи общего доступа (SAS) будут хорошим выбором — в статье ниже есть пример, который, я думаю, должен помочь: https://docs.microsoft.com/en-us/azure/Storage/storage-dotnet-shared-access-signature-part-2

Документация по SAS доступна здесь: https://docs.microsoft.com/en-us/azure/storage/storage-dotnet-shared-access-signature-part-1

Наконец, в приведенной ниже статье содержится хорошее краткое изложение темы: https://www.simple-talk.com/cloud/platform-as-a-service/azure-blob-storage-part-9-подписиобщегодоступа/

ХТН

person Ian    schedule 30.03.2017
comment
Привет Ян. большое спасибо за ваше предложение. В документе SAS я видел создание большого двоичного объекта с генерацией SAS. но я не знаю, как получить содержимое BLOB-объектов, созданное с помощью генерации SAS. Не могли бы вы предложить об этом. - person Vji; 30.03.2017
comment
Привет, Вджи, не беспокойся, я просто хочу проверить, как тебе нужна авторизация? Так, например, чтобы получить доступ к учетной записи хранения для установки SAS и т. д. или действительно вашего исходного фрагмента, вы выполняете аутентификацию в коде с помощью одного из двух ключей учетной записи, поэтому приложение аутентифицируется. Вы можете установить политику доступа к контейнеру как частную, если это соответствует вашим потребностям? Если вам нужно поделиться доступом к другому приложению или стороннему SAS, ваш друг. Вторая предоставленная ссылка включает раздел о возврате URI, используемого для доступа к большому двоичному объекту в качестве третьей стороны. Извините, если я неправильно понял ваш комментарий - person Ian; 30.03.2017