Разрешить доступ к узлам хранилища Azure для выбора пользователей?

StackOverflow https://stackoverflow.com/questions/1965437

Вопрос

Учитывая сохраненный файл в хранилище Azure (большие двоичные объекты, таблицы или очереди - не имеет значения), возможно ли разрешить доступ к нему для всех, но только на основе разрешений?

Например, у меня есть большое хранилище изображений и база данных, содержащая пользователей и авторизации.Я хочу, чтобы пользователь X мог получать доступ только к изображениям Y и Z.Таким образом, URL-адрес, как правило, будет недоступен, если вы не предоставите вместе с ним какой-либо временный токен безопасности.Как это возможно?Я знаю, что могу закрыть хранилище от внешнего мира и разрешить доступ к нему только через приложение, проверяющее этот материал, но для этого потребуется, чтобы приложение также находилось в Azure, а локальное приложение не сможет доставлять какой-либо контент из хранилища Azure.

Насколько я понимаю, большинство CDN предоставляют такую возможность, и я очень надеюсь, что Azure также предоставит решение для этого!

Итамар.

Это было полезно?

Решение

Я не думаю, что вы сможете достичь такого уровня фильтрации доступа.Единственные известные мне методы описаны в этой статье msdn

Управление доступом к контейнерам и большим двоичным объектам

и вот блог, в котором описывается небольшая часть кода для его реализации

Использование политик доступа на уровне контейнера в хранилище Windows Azure

Я не уверен, что это соответствовало бы вашим потребностям.Если бы я это правильно понял, я бы сделал это таким образом :1.Организуйте свой контент в контейнере, соответствующем ролям 2.В вашем локальном приложении проверьте, есть ли у пользователя доступ, и если да, сгенерируйте правильный URL, чтобы предоставить ему временный доступ к ресурсу.

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

Удачи.

Другие советы

На самом деле это возможно реализовать с помощью хранилища больших двоичных объектов.Рассмотрим (а) пользовательский интерфейс, похожий на Explorer, и (б) что пользователи уже прошли проверку подлинности (могли бы использовать Службу контроля доступа, но в этом нет необходимости).

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

Этот пользовательский интерфейс похож на проводник, но ему потребуется доступ к логике, которая представляла бы нужные файлы для данного пользователя, а также создавала бы соответствующие подписи общего доступа по мере необходимости.Обратите внимание, что эту логику не обязательно размещать в Azure, скорее всего, потребуется просто доступ к соответствующему ключу хранилища (с портала Azure).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top