AWS SDK для .NET#

Использование S3 через aws-sdk-net#

Для подключения AWS SDK для .NET (AWSSDK.core версии 3.7.400.53 или выше) к объектному хранилищу К2 Облака выполните следующие шаги:

  1. Получите настройки для доступа по API. Сделать это можно в консоли управления облаком. Нажмите на логин пользователя в правом верхнем углу и выберете Профиль Получить настройки доступа к API. В загруженном файле в переменной C2_PROJECT укажите идентификатор своего проекта.

  2. Добавьте полученные настройки в переменные окружения:

    Для ОС Windows конвертируйте файл настроек и экспортируйте переменные окружения:

    C:\> c2rc-convert path\to\c2rc.sh path\to\c2rc.bat
    C:\> call path\to\c2rc.bat
    

    Для конвертации настроек используется утилита с2rc-convert из пакета c2-client.

    Для OC Linux экспортируйте переменные окружения:

    source path/to/c2rc.sh
    
  3. Создайте проект .NET и добавьте в него пакеты AWSSDK.Core и AWSSDK.S3 из документации aws-sdk:

    dotnet new console --name awsdotnets3 && cd awsdotnets3
    dotnet add package AWSSDK.Core
    dotnet add package AWSSDK.S3
    
  4. Перейдите в директорию созданного проекта и создайте файл Program.cs со следующим блоком:

    Program.cs
    // Получение значения переменной окружения S3_URL
    string? serviceUrl = Environment.GetEnvironmentVariable("S3_URL");
    
    // Проверка наличия переменной окружения S3_URL
    if (string.IsNullOrWhiteSpace(serviceUrl))
    {
       Console.WriteLine("Environment variable S3_URL is not set or empty.");
       return;
    }
    
    // Настройка конфигурации клиента S3
    var config = new AmazonS3Config
    {
       SignatureVersion = "2",  // Используем Signature Version 2
       ServiceURL = serviceUrl  // S3_URL
    };
    
    client = new AmazonS3Client(config);
    
  5. Для сборки и запуска проекта выполните:

    dotnet build
    dotnet run