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 К2 Облака
       string? serviceUrl = Environment.GetEnvironmentVariable("S3_URL");
    
       // Проверка наличия переменной окружения S3_URL К2 Облака
       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 К2 Облака
       };
    
       client = new AmazonS3Client(config);
    
  5. Для сборки и запуска проекта выполните:

    dotnet build
    dotnet run