Начало работы

Получение эндпоинта

В личном кабинете уточните нужный эндпоинт в блоке Объектное хранилище S3.

Авторизация и аутентификация

Большинство запросов к VK Object Storage требуют аутентификации.

Данные аутентификации прописываются в заголовке Authorization запроса:

Authorization: <ТИП_ПОДПИСИ>-<АЛГОРИТМ_ПОДПИСИ> Credential=<КЛЮЧ_ДОСТУПА>/<ДАТА>/<РЕГИОН>/s3/aws4_request,SignedHeaders=<ЗАГОЛОВКИ>,Signature=<ПОДПИСЬ>

Здесь:

  • <ТИП_ПОДПИСИ>AWS4.

  • <АЛГОРИТМ_ПОДПИСИ>HMAC-SHA256.

  • <КЛЮЧ_ДОСТУПА>идентификатор ключа доступа к VK Object Storage.

  • <ДАТА> — дата в формате ГГГГММДД.

  • <РЕГИОН>регион аккаунта. Доступные значения:

    • ru-msk — региона Москва;
    • kz-ast — регион Казахстан.
  • <ЗАГОЛОВКИ> — список заголовков, которые используются при вычислении подписи. Заголовки должны быть написаны только строчными буквами и располагаться в алфавитном порядке.

  • <ПОДПИСЬ>вычисляемая подпись запроса.

Пример запроса с авторизацией:

PUT / HTTP/1.1Host: my-test-bucket1.hb.ru-msk.vkcloud-storage.rux-amz-acl: public-readx-amz-content-sha256: c6f1fc479f5f690c443b73a258aacc06ddad09eca0b001e9640ff2cd56fe5710x-amz-date: 20200831T173143ZAuthorization: AWS4-HMAC-SHA256 Credential=II5JDQBAN3JYM4DNEB6C/20200831/ru-msk/s3/aws4_request,SignedHeaders=host;x-amz-acl;x-amz-content-sha256;x-amz-date,Signature=6cab03bef74a80a0441ab7fd33c829a2cdb46bba07e82da518cdb78ac238fda5<CreateBucketConfiguration>  <LocationConstraint>ru-msk</LocationConstraint></CreateBucketConfiguration>