Аутентификация
In this article:
Аутентификация#
Запросы к объектному хранилищу могут быть как аутентифицированными, так и неаутентифицированными. Неаутентифицированные запросы могут быть отправлены анонимными пользователями.
Объектное хранилище К2 Облака поддерживает следующие версии аутентификации AWS:
Signature Version 2 (AWSv2);
Signature Version 4 (AWSv4).
Аутентифицированные запросы должны содержать заголовок Authorization. Заголовок для аутентификации запроса в соответствии с AWSv4 включает следующие параметры:
Параметр |
Описание |
---|---|
AWS4-HMAC-SHA256 |
Тип подписи AWS (AWS4) и алгоритм подписи (HMAC-SHA256) |
Credential |
Ключ доступа и информация о запросе в виде: <access-key>/<data>/<region>/<service>/aws4_request |
SignedHeaders |
Список используемых при вычислении подписи заголовков в нижнем регистре и в алфавитном порядке, например, |
Signature |
Подпись для аутентификации запроса, вычисляемая с использованием ключа доступа, хеша тела запроса и запроса в каноническом представлении. |
Пример заголовка для аутентификации запроса:
Authorization: AWS4-HMAC-SHA256
Credential=project:user@company/20220603/{region}/s3/aws4_request,
SignedHeaders=host;x-amz-content-sha256;x-amz-date,
Signature=897f92a12dbd98b20bd133efc8ffa9011eac346ffa73065928368f32311b88a4
Примечание
При осуществлении вызовов REST API напрямую из кода необходимо самостоятельно рассчитать подпись для аутентификации вызова. Это достаточно громоздкая процедура, поэтому для работы с API мы рекомендуем использовать AWS CLI или S3cmd.
При использовании для аутентификации AWS Signature Version 4 подпись рассчитывается следующим образом.