get-object-attributes
Описание
Извлекает все метаданные объекта, не возвращая сам объект. Эта операция полезна, если вас интересуют только метаданные объекта.
GetObjectAttributes объединяет функциональность HeadObject и ListParts . Все данные, возвращаемые каждым из этих отдельных вызовов, могут быть возвращены с помощью одного вызова GetObjectAttributes .Примечание
Разрешения
-
Разрешения для вёдер общего назначения - Для использования
GetObjectAttributesнеобходимо иметь доступ для чтения к объекту. Разрешения, которые вам необходимы для использования этой операции, зависят от того, является ли ведро версионированным. Если ведро версионировано, вам необходимо получить какs3:GetObjectVersion, так иs3:GetObjectVersionAttributesразрешения для данной операции. Если ведро не версионировано, вам необходимыs3:GetObjectиs3:GetObjectAttributesразрешения. Дополнительную информацию см. в разделе Указание разрешений в политике в руководстве пользователя Amazon S3. Если запрашиваемый объект не существует, ошибка, возвращаемая Amazon S3, зависит от того, имеете ли вы также разрешениеs3:ListBucket.- Если у вас есть разрешение
s3:ListBucketна ведро, Amazon S3 возвращает код HTTP-статуса404 Not Found(«такого ключа нет») ошибку. - Если у вас нет разрешения
s3:ListBucket, Amazon S3 возвращает код HTTP-статуса403 Forbidden(«доступ запрещён») ошибку.
- Если у вас есть разрешение
-
Разрешения для вёдер каталогов - Для предоставления доступа к этой API-операции для ведра каталогов рекомендуется использовать операцию API `
CreateSessionhttps://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html`__ для сессионно-основанной авторизации. В частности, вы предоставляете разрешениеs3express:CreateSessionдля ведра каталогов в политике ведра или политике, основанной на удостоверении IAM. Затем вы выполните вызов APICreateSessionдля ведра, чтобы получить токен сессии. С токеном сессии в заголовке запроса вы можете выполнить запросы API для этой операции. После истечения срока действия токена сессии вы снова выполните вызов APICreateSessionдля генерации нового токена сессии для использования. Amazon Web Services CLI или SDK автоматически создают сессию и обновляют токен сессии, чтобы избежать прерывания службы при истечении срока действия сессии. Дополнительную информацию об авторизации см. в `CreateSessionhttps://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html`__ . Если объект зашифрован с использованием SSE-KMS, вам также необходимо разрешениеkms:GenerateDataKeyиkms:Decryptв политиках, основанных на удостоверении IAM, и политиках ключей KMS для ключа KMS.Шифрование
Примечание
Заголовки запроса шифрования, такие какx-amz-server-side-encryption, не должны отправляться для HEAD запросов, если ваш объект использует шифрование на стороне сервера с ключами Key Management Service (KMS) (SSE-KMS), двухслойное шифрование на стороне сервера с ключами Amazon Web Services KMS (DSSE-KMS) или шифрование на стороне сервера с управляемыми Amazon S3 ключами (SSE-S3). Заголовок x-amz-server-side-encryption используется при загрузке объекта в S3 для указания метода шифрования. Если вы включите этот заголовок в запрос GET для объекта, использующего такие типы ключей, вы получите HTTP-ошибку 400 Bad Request. Это потому, что метод шифрования не может быть изменён при получении объекта.Если вы шифруете объект, используя шифрование на стороне сервера с предоставленными клиентом ключами (SSE-C), когда вы сохраняете объект в Amazon S3, то при получении метаданных объекта необходимо использовать следующие заголовки для предоставления ключа шифрования серверу, чтобы тот смог получить метаданные объекта. Заголовки:
x-amz-server-side-encryption-customer-algorithmx-amz-server-side-encryption-customer-keyx-amz-server-side-encryption-customer-key-MD5
Дополнительную информацию о SSE-C см. в разделе Шифрование на стороне сервера (использование предоставленных клиентом ключей) в руководстве пользователя Amazon S3.
Примечание
AES256 ) и шифрование на стороне сервера с ключами KMS (SSE-KMS) (aws:kms ). Рекомендуется, чтобы по умолчанию для ведра использовалось нужное шифрование, и вы не переопределяете шифрование по умолчанию в ваших CreateSession запросах или запросах PUT объекта. В этом случае новые объекты будут автоматически зашифрованы с нужными настройками шифрования. Дополнительную информацию см. в разделе Защита данных с помощью шифрования на стороне сервера в руководстве пользователя Amazon S3. Дополнительную информацию о поведении переопределения шифрования в ведрах каталогов см. в разделе Указание шифрования на стороне сервера с помощью KMS для новых загрузок объектов.Версионирование
Вёдра каталогов - Версионирование S3 не включено и не поддерживается для вёдер каталогов. Для этой API-операции ведрами каталогов поддерживается только значение идентификатора версии null. Вы можете указать только значение null для параметра запроса versionId.
Рассмотрите следующие моменты при использовании заголовков запроса:
- Если оба заголовка
If-MatchиIf-Unmodified-Sinceприсутствуют в запросе следующим образом, Amazon S3 возвращает код HTTP-статуса200 OKи запрашиваемые данные:-
Условие
If-Matchоценивается какtrue. -
Условие
If-Unmodified-Sinceоценивается какfalse.
-
Условие
Дополнительную информацию об условных запросах см. в RFC 7232.
- Если оба заголовка
If-None-MatchиIf-Modified-Sinceприсутствуют в запросе следующим образом, Amazon S3 возвращает код HTTP-статуса304 Not Modified:-
Условие
If-None-Matchоценивается какfalse. -
Условие
If-Modified-Sinceоценивается какtrue.
-
Условие
Дополнительную информацию об условных запросах см. в RFC 7232.
Вёдра каталогов - Синтаксис заголовка HTTP Host: `` Имя-ведёрка .s3express-zone-id .*region-code* .amazonaws.com`` .
Следующие действия связаны с GetObjectAttributes :
- GetObject
- GetObjectAcl
- GetObjectLegalHold
- GetObjectLockConfiguration
- GetObjectRetention
- GetObjectTagging
- HeadObject
- ListParts
См. также: Документация AWS API
Синтаксис
get-object-attributes
--bucket <value>
--key <value>
[--version-id <value>]
[--max-parts <value>]
[--part-number-marker <value>]
[--sse-customer-algorithm <value>]
[--sse-customer-key <value>]
[--sse-customer-key-md5 <value>]
[--request-payer <value>]
[--expected-bucket-owner <value>]
--object-attributes <value>
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]
Параметры
--bucket (строка)
Имя ведра, содержащего объект.
Ведра каталогов — При использовании этой операции с ведром каталогов необходимо использовать запросы в стиле виртуального хостинга в формате `` Имя-ведра .s3express-идентификатор-зоны .*код-региона* .amazonaws.com`` . Запросы в стиле пути не поддерживаются. Имена ведер каталогов должны быть уникальными в выбранной зоне (зоне доступности или локальной зоне). Имена ведер должны соответствовать формату `` основное-имя-ведра –идентификатор-зоны –x-s3`` (например, `` amzn-s3-demo-bucket –usw2-az1 –x-s3`` ). Сведения о ограничениях для имен ведер см. в руководстве пользователя Amazon S3 в разделе Правила именования ведер каталогов.
Точки доступа — При использовании этого действия с точкой доступа для ведер общего назначения необходимо указать псевдоним точки доступа вместо имени ведра или указать ARN точки доступа. При использовании этого действия с точкой доступа для ведер каталогов необходимо указать имя точки доступа вместо имени ведра. При использовании ARN точки доступа необходимо направить запросы на имя хоста точки доступа. Имя хоста точки доступа имеет вид ИмяТочкиДоступа -ИдентификаторАккаунта .s3-accesspoint.*Регион* .amazonaws.com. При использовании этого действия с точкой доступа через SDK Amazon Web Services необходимо указать ARN точки доступа вместо имени ведра. Дополнительные сведения о ARN точек доступа см. в руководстве пользователя Amazon S3 в разделе Использование точек доступа.
Примечание
S3 в Outposts — При использовании этого действия с S3 в Outposts необходимо направить запросы на имя хоста S3 в Outposts. Имя хоста S3 в Outposts имеет вид `` ИмяТочкиДоступа -ИдентификаторАккаунта .*идентификатор-outpost* .s3-outposts.*Регион* .amazonaws.com`` . При использовании этого действия с S3 в Outposts целевое ведро должно быть ARN точки доступа Outposts или псевдонимом точки доступа. Дополнительные сведения о S3 в Outposts см. в руководстве пользователя Amazon S3 в разделе Что такое S3 в Outposts?
--key (строка)
--version-id (строка)
Идентификатор версии, используемый для ссылки на определенную версию объекта.
Примечание
S3-версионирование не включено и не поддерживается для ведер каталогов. Для данной операции API только значениеnull идентификатора версии поддерживается ведрами каталогов. Вы можете указать только null для параметра запроса versionId.--max-parts (целое число)
--part-number-marker (целое число)
--sse-customer-algorithm (строка)
Указывает алгоритм, используемый при шифровании объекта (например, AES256).
Примечание
Данная функция не поддерживается для ведер каталогов.--sse-customer-key (строка)
Указывает предоставленный клиентом ключ шифрования для использования Amazon S3 при шифровании данных. Это значение используется для хранения объекта, а затем удаляется; Amazon S3 не хранит ключ шифрования. Ключ должен быть подходящим для использования с алгоритмом, указанным в заголовке x-amz-server-side-encryption-customer-algorithm.
Примечание
Данная функция не поддерживается для ведер каталогов.--sse-customer-key-md5 (строка)
Указывает 128-битный MD5-дайджест ключа шифрования в соответствии со спецификацией RFC 1321. Amazon S3 использует этот заголовок для проверки целостности сообщения, чтобы убедиться, что ключ шифрования был передан без ошибок.
Примечание
Данная функция не поддерживается для ведер каталогов.--request-payer (строка)
Подтверждает, что запрашивающий знает, что он будет оплачивать за запрос. Владельцам ведер не нужно указывать этот параметр в своих запросах. Если у источника или целевого ведра S3 включена опция «Requester Pays», запрашивающий будет оплачивать соответствующие расходы на копирование объекта. Сведения о загрузке объектов из ведер с опцией «Requester Pays» см. в руководстве пользователя Amazon S3 в разделе Загрузка объектов из ведер с опцией «Requester Pays».
Примечание
Данная функция не поддерживается для ведер каталогов.Возможные значения:
requester
--expected-bucket-owner (строка)
403 Forbidden (доступ запрещен).--object-attributes (список)
Указывает поля на корневом уровне, которые вы хотите получить в ответе. Поля, которые вы не укажете, не будут возвращены.
(строка)
Синтаксис:
"string" "string" ...
Where valid values are:
ETag
Checksum
ObjectParts
StorageClass
ObjectSize
--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной JSON-строки. JSON-строка следует формату, указанному в --generate-cli-skeleton. Если на командной строке предоставлены другие аргументы, эти значения переопределят значения, предоставленные JSON. Невозможно передавать произвольные двоичные данные, используя предоставленное JSON-значение, поскольку строка будет интерпретирована буквально. Это не может быть указано вместе с --cli-input-yaml.
--generate-cli-skeleton (строка) Выводит JSON-скелет в стандартный вывод, не отправляя запрос API. Если предоставлено значение без значения или значение input, выводит пример входного JSON, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если предоставлено yaml-input, он выведет пример входного YAML, который можно использовать с --cli-input-yaml. Если предоставлено значение output, оно проверит входные данные команды и вернет пример выходного JSON для этой команды. Сгенерированный JSON-скелет не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном JSON-скелете.
Глобальные параметры
--debug (булево)
Включить отладочный вывод.
--endpoint-url (строка)
Переопределить стандартный URL команды заданным URL.
--no-verify-ssl (булево)
По умолчанию AWS CLI использует SSL при общении с сервисами AWS. Для каждого SSL-соединения AWS CLI будет проверять SSL-сертификаты. Этот параметр переопределяет стандартное поведение проверки SSL-сертификатов.
--no-paginate (булево)
Отключить автоматическую постраничность. Если автоматическая постраничность отключена, AWS CLI выполнит только один вызов для первой страницы результатов.
--output (строка)
Стиль форматирования для вывода команд.
- json
- text
- table
- yaml
- yaml-stream
--query (строка)
Запрос JMESPath для фильтрации данных ответа.
--profile (строка)
Использовать определенный профиль из файла ключей.
--region (строка)
Регион для использования. Переопределяет настройки из конфигурации/среды.
--version (строка)
Отобразить версию этого инструмента.
--color (строка)
Включить/выключить цветной вывод.
- включено
- выключено
- авто
--no-sign-request (булево)
Не подписывать запросы. Ключи не будут загружены, если этот аргумент предоставлен.
--ca-bundle (строка)
Файл с сертификатами CA для проверки SSL-сертификатов. Переопределяет настройки из конфигурации/среды.
--cli-read-timeout (целое число)
Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-connect-timeout (целое число)
Максимальное время подключения сокета в секундах. Если значение установлено в 0, подключение сокета будет блокирующим и без таймаута. Значение по умолчанию — 60 секунд.
--cli-binary-format (строка)
Стиль форматирования для двоичных блоков. По умолчанию используется формат base64. Формат base64 ожидает, что двоичные блоки будут предоставлены как строка, закодированная в base64. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI версии 1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, отображающего двоичный блок, fileb:// всегда будет обрабатываться как двоичный и использовать содержимое файла напрямую, независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть должным образом отформатировано для настроенного cli-binary-format.
- base64
- raw-in-base64-out
--no-cli-pager (булево)
Отключить вывод с помощью пэджера.
--cli-auto-prompt (булево)
Автоматически запрашивать параметры ввода CLI.
--no-cli-auto-prompt (булево)
Отключить автоматическое запроса параметров ввода CLI.
Примеры
Примечание
Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительные сведения см. в руководстве пользователя AWS CLI в разделе «Начало работы».
Если не указано иное, во всех примерах используются правила цитирования Unix-подобных систем. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки терминала. См. раздел Использование кавычек со строками в руководстве пользователя AWS CLI.
Чтобы получить метаданные объекта без возврата самого объекта
Следующий пример get-object-attributes получает метаданные объекта doc1.rtf.
aws s3api get-object-attributes \
--bucket amzn-s3-demo-bucket \
--key doc1.rtf \
--object-attributes "StorageClass" "ETag" "ObjectSize"
Вывод:
{
"LastModified": "2022-03-15T19:37:31+00:00",
"VersionId": "IuCPjXTDzHNfldAuitVBIKJpF2p1fg4P",
"ETag": "b662d79adeb7c8d787ea7eafb9ef6207",
"StorageClass": "STANDARD",
"ObjectSize": 405
}
Дополнительные сведения см. в разделе GetObjectAttributes в справке Amazon S3 API.
Вывод
DeleteMarker -> (boolean)
Указывает, был ли извлеченный объект (true ) или не был (false ) маркером удаления. Если false , этот заголовок ответа не отображается в ответе. Чтобы узнать больше о маркерах удаления, см. Работа с маркерами удаления.
Примечание
Данная функциональность не поддерживается для ведер каталогов.LastModified -> (timestamp)
VersionId -> (string)
Идентификатор версии объекта.
Примечание
Данная функциональность не поддерживается для ведер каталогов.RequestCharged -> (string)
При наличии указывает, что запрос был успешно оплачен запросившим.
Примечание
Данная функциональность не поддерживается для ведер каталогов.ETag -> (string)
Checksum -> (structure)
Контрольная сумма или дайджест объекта.
ChecksumCRC32 -> (string)
CRC32 checksum объекта. Эта контрольная сумма присутствует только в том случае, если контрольная сумма была загружена с объектом. При использовании операции API с объектом, загруженным с помощью многочастной загрузки, это значение может не быть прямой контрольной суммой всего объекта. Вместо этого это вычисление, основанное на контрольных суммах каждой отдельной части. Дополнительную информацию о том, как вычисляются контрольные суммы с помощью многочастной загрузки, см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumCRC32C -> (string)
CRC32C контрольная сумма объекта. Эта контрольная сумма присутствует только в том случае, если контрольная сумма была загружена с объектом. При использовании операции API с объектом, загруженным с помощью многочастной загрузки, это значение может не быть прямой контрольной суммой всего объекта. Вместо этого это вычисление, основанное на контрольных суммах каждой отдельной части. Дополнительную информацию о том, как вычисляются контрольные суммы с помощью многочастной загрузки, см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumCRC64NVME -> (string)
CRC64NVME контрольная сумма объекта. Эта контрольная сумма присутствует, если объект был загружен с использованием алгоритма контрольной суммы CRC64NVME или если объект был загружен без контрольной суммы (и Amazon S3 добавила стандартную контрольную сумму, CRC64NVME , к загруженному объекту). Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumSHA1 -> (string)
SHA1 дайджеста объекта. Это будет присутствовать только в том случае, если объект был загружен с объектом. При использовании операции API с объектом, загруженным с помощью многочастной загрузки, это значение может не быть прямой контрольной суммой всего объекта. Вместо этого это вычисление, основанное на контрольных суммах каждой отдельной части. Дополнительную информацию о том, как вычисляются контрольные суммы с помощью многочастной загрузки, см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumSHA256 -> (string)
SHA256 дайджеста объекта. Это будет присутствовать только в том случае, если объект был загружен с объектом. При использовании операции API с объектом, загруженным с помощью многочастной загрузки, это значение может не быть прямой контрольной суммой всего объекта. Вместо этого это вычисление, основанное на контрольных суммах каждой отдельной части. Дополнительную информацию о том, как вычисляются контрольные суммы с помощью многочастной загрузки, см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumType -> (string)
ObjectParts -> (structure)
Коллекция частей, связанных с многочастной загрузкой.
TotalPartsCount -> (integer)
PartNumberMarker -> (integer)
NextPartNumberMarker -> (integer)
PartNumberMarker в последующем запросе.MaxParts -> (integer)
IsTruncated -> (boolean)
true указывает, что список был усечён. Список может быть усечён, если количество частей превышает предел, возвращённый в элементе MaxParts.Parts -> (list)
Контейнер для элементов, относящихся к определённой части. Ответ может содержать ноль или более элементов Parts.
Примечание
-
Ведра общего назначения - Для
GetObjectAttributes, если дополнительная контрольная сумма (включаяx-amz-checksum-crc32,x-amz-checksum-crc32c,x-amz-checksum-sha1илиx-amz-checksum-sha256) не применяется к объекту, указанному в запросе, ответ не возвращаетPart. -
Ведра каталогов - Для
GetObjectAttributes, независимо от того, применяется ли дополнительная контрольная сумма к указанному в запросе объекту, ответ возвращаетPart.
(structure)
Контейнер для элементов, относящихся к отдельной части.
PartNumber -> (integer)
Size -> (long)
ChecksumCRC32 -> (string)
CRC32 контрольная сумма части. Эта контрольная сумма присутствует, если запрос многочастной загрузки был создан с помощью алгоритма контрольной суммы CRC32. Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumCRC32C -> (string)
CRC32C контрольная сумма части. Эта контрольная сумма присутствует, если запрос многочастной загрузки был создан с помощью алгоритма контрольной суммы CRC32C. Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumCRC64NVME -> (string)
CRC64NVME контрольная сумма части. Эта контрольная сумма присутствует, если запрос многочастной загрузки был создан с помощью алгоритма контрольной суммы CRC64NVME или если объект был загружен без контрольной суммы (и Amazon S3 добавила стандартную контрольную сумму, CRC64NVME , к загруженному объекту). Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumSHA1 -> (string)
SHA1 контрольная сумма части. Эта контрольная сумма присутствует, если запрос многочастной загрузки был создан с помощью алгоритма контрольной суммы SHA1. Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.ChecksumSHA256 -> (string)
SHA256 контрольная сумма части. Эта контрольная сумма присутствует, если запрос многочастной загрузки был создан с помощью алгоритма контрольной суммы SHA256. Дополнительную информацию см. в разделе Проверка целостности объектов в Руководстве пользователя Amazon S3.StorageClass -> (string)
Предоставляет информацию о классе хранения объекта. Amazon S3 возвращает этот заголовок для всех объектов, кроме объектов класса хранения S3 Standard.
Дополнительную информацию см. в разделе Классы хранения.
Примечание
Ведра каталогов - Ведра каталогов поддерживают толькоEXPRESS_ONEZONE (класс хранения S3 Express One Zone) в зонах доступности и ONEZONE_IA (класс хранения S3 One Zone-Infrequent Access) в выделенных локальных зонах.ObjectSize -> (long)
© Copyright 2025, Amazon Web Services. Created using Sphinx.