Прочитать на английском

Поделиться через


Приступим к работе с объектами BLOB в Azure и платформой .NET.

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

Если вы хотите начать с полного примера, см.: Краткое руководство: клиентская библиотека для .NET для работы с хранилищем BLOB-объектов Azure.

Справка по API | Исходный код библиотеки | Пакет (NuGet) | Примеры | Оставить отзыв

Предварительные условия

Настройка проекта

В этом разделе рассматривается подготовка проекта для работы с клиентской библиотекой хранилища BLOB-объектов Azure для .NET.

В каталоге проекта установите пакеты для клиентских библиотек Хранилище BLOB-объектов Azure и удостоверений Azure с помощью dotnet add package команды. Пакет Azure.Identity необходим для подключения к службам Azure без пароля.

dotnet add package Azure.Storage.Blobs
dotnet add package Azure.Identity

Добавьте эти using директивы в начало файла кода:

using Azure.Identity;
using Azure.Storage.Blobs;
using Azure.Storage.Blobs.Models;
using Azure.Storage.Blobs.Specialized;

Сведения о библиотеке клиента BLOB.

  • Azure.Storage.Blobs: содержит основные классы (клиентские объекты), которые можно использовать для работы со службой, контейнерами и BLOB-объектами.

  • Azure.Storage.Blobs.Specialized: содержит классы, которые можно использовать для выполнения операций, относящихся к типу BLOB-объектов, например блочных BLOB-объектов.

  • Azure.Storage.Blobs.Models: все остальные вспомогательные классы, структуры и типы перечислений.

Авторизуйте доступ и подключитесь к хранилищу BLOB-данных

Чтобы подключить приложение к хранилищу BLOB-объектов, создайте экземпляр класса BlobServiceClient . Этот объект является отправной точкой для взаимодействия с ресурсами данных на уровне учетной записи хранения. Вы можете использовать его для управления учетной записью хранения и ее контейнерами. Вы также можете использовать клиент службы для создания клиентов контейнеров или блоб-клиентов в зависимости от ресурса, с которым требуется работать.

Дополнительные сведения о создании клиентских объектов и управлении ими см. в статье "Создание клиентских объектов и управление ими", взаимодействующих с ресурсами данных.

Вы можете авторизовать объект BlobServiceClient с помощью маркера авторизации Microsoft Entra, ключа доступа к учетной записи или подписанной строки доступа (SAS). Для оптимальной безопасности корпорация Майкрософт рекомендует использовать Microsoft Entra ID с управляемыми удостоверениями для авторизации запросов к BLOB-данным. Для получения дополнительной информации см. Авторизация доступа к BLOB-объектам с использованием Microsoft Entra ID.

Создайте объект StorageSharedKeyCredential с помощью имени учетной записи хранения и ключа учетной записи. Затем используйте этот объект для инициализации класса BlobServiceClient.

public static void GetBlobServiceClient(ref BlobServiceClient blobServiceClient,
    string accountName, string accountKey)
{
    Azure.Storage.StorageSharedKeyCredential sharedKeyCredential =
        new StorageSharedKeyCredential(accountName, accountKey);

    string blobUri = "https://" + accountName + ".blob.core.windows.net";

    blobServiceClient = new BlobServiceClient
        (new Uri(blobUri), sharedKeyCredential);
}

BlobServiceClient можно также создать, используя строку подключения.

BlobServiceClient blobServiceClient = new BlobServiceClient(connectionString);

Сведения о получении ключей учетной записи и рекомендации по правильному управлению и защите ключей см. в статье Управление ключами доступа к учетной записи хранения.

Важно!

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

Дополнительные сведения о каждом из этих механизмов авторизации см. в статье об авторизации доступа к данным в службе хранилища Azure.

Создайте своё приложение

При создании приложений для работы с ресурсами данных в Хранилище BLOB-объектов Azure код в основном взаимодействует с тремя типами ресурсов: учетными записями хранения, контейнерами и большими двоичными объектами. Дополнительные сведения об этих типах ресурсов, о том, как они связаны друг с другом и как приложения взаимодействуют с ресурсами, см. в статье "Общие сведения о взаимодействии приложений с ресурсами хранилища BLOB-объектов".

В следующих руководствах показано, как получить доступ к данным и выполнить определенные действия с помощью клиентской библиотеки служба хранилища Azure для .NET:

Руководство Описание
Добавление данных в BLOB-объекты Узнайте, как создать добавочный BLOB-объект, а затем добавить в него данные.
Настройка политики повторных попыток Реализуйте политики повторных попыток для клиентских операций.
Копирование блобов Скопируйте BLOB из одного места в другое.
Создание контейнера Создание контейнеров.
Создание SAS делегирования пользователя Создайте SAS пользовательской делегации для контейнера или BLOB-объекта.
Создание аренды BLOB-объектов и управление ими Установите блокировку на объект блоб и управляйте ею.
Создание аренды контейнеров и управление ими Создайте блокировку контейнера и управляйте ею.
Удаление и восстановление объектов BLOB Удалите BLOB-объекты и, если включено мягкое удаление, восстановите удаленные BLOB-объекты.
Удаление и восстановление контейнеров Удалите контейнеры и, если включено обратимое удаление, восстановите удаленные контейнеры.
скачивание больших двоичных объектов; Загрузка BLOB-объектов с использованием строк, потоков и путей к файлам.
Поиск BLOB-объектов с помощью тегов Задайте и извлеките теги и используйте теги для поиска больших двоичных объектов.
Перечисление больших двоичных объектов Перечисление BLOB-объектов различными способами.
Перечисление контейнеров Перечислить контейнеры в учетной записи и различные параметры, доступные для настройки списка.
Управление свойствами и метаданными Получение и задание свойств и метаданных для BLOB-объектов.
Управление свойствами и метаданными Получение и задание свойств и метаданных для контейнеров.
Настройка производительности для передачи данных Оптимизируйте производительность операций передачи данных.
Установка или изменение уровня доступа блоба Задайте или измените уровень доступа для блочного большого двоичного объекта.
Загрузка объектов данных Узнайте, как отправлять BLOB-объекты с помощью строк, потоков, путей к файлам и других методов.