Spec-Zone.ru › AWS CLI v2

[ aws . s3api ]

put-object-acl

Описание

Примечание

Данная операция не поддерживается для ведер каталогов.

Использует подресурс acl для установки разрешений списка управления доступом (ACL) для нового или существующего объекта в ведре S3. Для установки ACL объекта необходимо разрешение WRITE_ACP. Дополнительную информацию см. в разделе Какие разрешения я могу предоставить? в руководстве пользователя Amazon S3.

Данная функция не поддерживается для Amazon S3 на Outposts.

В зависимости от потребностей вашего приложения, вы можете установить ACL для объекта, используя либо тело запроса, либо заголовки. Например, если у вас есть существующее приложение, которое обновляет ACL ведра с помощью тела запроса, вы можете продолжить использовать этот подход. Дополнительную информацию см. в разделе Обзор списков управления доступом (ACL) в руководстве пользователя Amazon S3.

Предупреждение

Если ваше ведро использует настройку с принудительным владением объектом S3, ACL отключены и больше не влияют на разрешения. Для предоставления доступа к вашему ведру и объектам в нем необходимо использовать политики. Запросы на установку или обновление ACL завершаются ошибкой и возвращают код ошибки AccessControlListNotSupported. Запросы на чтение ACL по-прежнему поддерживаются. Дополнительную информацию см. в разделе Управление владением объектами в руководстве пользователя Amazon S3.

Разрешения

Вы можете установить разрешения доступа одним из следующих способов:

  • Укажите предопределенный ACL с заголовком запроса x-amz-acl. Amazon S3 поддерживает набор предопределенных ACL, известных как предопределенные ACL. Каждый предопределенный ACL имеет предопределенный набор уполномоченных лиц и разрешений. Укажите имя предопределенного ACL в качестве значения x-amz-ac. Если вы используете этот заголовок, вы не можете использовать другие заголовки, специфичные для управления доступом, в вашем запросе. Дополнительную информацию см. в разделе Предопределенные ACL.

  • Укажите разрешения доступа явно с помощью заголовков x-amz-grant-read, x-amz-grant-read-acp, x-amz-grant-write-acp и x-amz-grant-full-control. При использовании этих заголовков вы указываете явные разрешения доступа и уполномоченных лиц (учетные записи Amazon Web Services или группы Amazon S3), которые получат это разрешение. Если вы используете эти заголовки, специфичные для ACL, вы не можете использовать заголовок x-amz-acl для установки предопределенного ACL. Эти параметры соответствуют набору разрешений, которые поддерживает Amazon S3 в ACL. Дополнительную информацию см. в разделе Обзор списков управления доступом (ACL). Вы указываете каждого уполномоченного лица в виде пары тип=значение, где тип является одним из следующих:

    • id – если указанное значение является каноническим идентификатором пользователя учетной записи Amazon Web Services
    • uri – если вы предоставляете разрешения предопределенной группе
    • emailAddress – если указанное значение является адресом электронной почты учетной записи Amazon Web Services

    Примечание

    Использование адресов электронной почты для указания уполномоченного лица поддерживается только в следующих регионах Amazon Web Services:

    • US East (N. Virginia)
    • US West (N. California)
    • US West (Oregon)
    • Asia Pacific (Singapore)
    • Asia Pacific (Sydney)
    • Asia Pacific (Tokyo)
    • Europe (Ireland)
    • South America (São Paulo)

    Список всех поддерживаемых Amazon S3 регионов и конечных точек см. в разделе Регионы и конечные точки в общем справочнике Amazon Web Services.

Например, следующий заголовок x-amz-grant-read предоставляет разрешение на просмотр списка объектов для двух учетных записей Amazon Web Services, определенных по их адресам электронной почты.

x-amz-grant-read: emailAddress="xyz@amazon.com", emailAddress="abc@amazon.com"

Вы можете использовать либо предопределенный ACL, либо явно указать разрешения доступа. Вы не можете делать оба.

Значения уполномоченных лиц

Вы можете указать лицо (уполномоченное лицо), которому вы назначаете права доступа (используя элементы запроса), следующим образом:

  • По идентификатору лица: <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="CanonicalUser"><ID><>ID<></ID><DisplayName><>GranteesEmail<></DisplayName> </Grantee> DisplayName является необязательным и игнорируется в запросе.
  • По URI: <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="Group"><URI><>http://acs.amazonaws.com/groups/global/AuthenticatedUsers<></URI></Grantee>
  • По адресу электронной почты: <Grantee xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="AmazonCustomerByEmail"><EmailAddress><>Grantees@email.com<></EmailAddress>lt;/Grantee> Уполномоченное лицо разрешается до CanonicalUser и в ответе на запрос GET Object acl отображается как CanonicalUser.

Примечание

Использование адресов электронной почты для указания уполномоченного лица поддерживается только в следующих регионах Amazon Web Services:

  • US East (N. Virginia)
  • US West (N. California)
  • US West (Oregon)
  • Asia Pacific (Singapore)
  • Asia Pacific (Sydney)
  • Asia Pacific (Tokyo)
  • Europe (Ireland)
  • South America (São Paulo)

Список всех поддерживаемых Amazon S3 регионов и конечных точек см. в разделе Регионы и конечные точки в общем справочнике Amazon Web Services.

Версии

ACL объекта устанавливается на уровне версии объекта. По умолчанию PUT устанавливает ACL текущей версии объекта. Чтобы установить ACL другой версии, используйте подресурс versionId.

Следующие операции связаны с PutObjectAcl:

  • CopyObject
  • GetObject

См. также: Документация API AWS

Синопсис

  put-object-acl
[--acl <value>]
[--access-control-policy <value>]
--bucket <value>
[--content-md5 <value>]
[--checksum-algorithm <value>]
[--grant-full-control <value>]
[--grant-read <value>]
[--grant-read-acp <value>]
[--grant-write <value>]
[--grant-write-acp <value>]
--key <value>
[--request-payer <value>]
[--version-id <value>]
[--expected-bucket-owner <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]

Параметры

--acl (строка)

Предустановленный ACL для применения к объекту. Дополнительная информация доступна в разделе Предустановленные ACL.

Возможные значения:

  • private
  • public-read
  • public-read-write
  • authenticated-read
  • aws-exec-read
  • bucket-owner-read
  • bucket-owner-full-control

--access-control-policy (структура)

Содержит элементы, устанавливающие разрешения ACL для объекта по каждому получателю прав.

Разрешения -> (список)

Список разрешений.

(структура)

Контейнер для информации о разрешениях.

Получатель -> (структура)

Лицо, которому предоставляются разрешения.

Имя отображения -> (строка)

Псевдоним получателя.

Адрес электронной почты -> (строка)

Адрес электронной почты получателя.

Примечание

Использование адресов электронной почты для указания получателя поддерживается только в следующих регионах Amazon Web Services:

  • США Восточный (Северная Вирджиния)
  • США Западный (Северная Калифорния)
  • США Западный (Орегон)
  • Азиатско-Тихоокеанский регион (Сингапур)
  • Азиатско-Тихоокеанский регион (Сидней)
  • Азиатско-Тихоокеанский регион (Токио)
  • Европа (Ирландия)
  • Южная Америка (Сан-Паулу)

Список всех поддерживаемых Amazon S3 регионов и конечных точек см. в разделе Регионы и конечные точки в Общей справке Amazon Web Services.

ID -> (строка)

Канонический идентификатор пользователя получателя.

Тип -> (строка)

Тип получателя

URI -> (строка)

URI группы получателей.

Разрешение -> (строка)

Указывает разрешение, предоставленное получателю.

Владелец -> (структура)

Контейнер для имени отображения и идентификатора владельца ведра.

Имя отображения -> (строка)

Контейнер для имени отображения владельца. Это значение поддерживается только в следующих регионах Amazon Web Services:

  • США Восточный (Северная Вирджиния)
  • США Западный (Северная Калифорния)
  • США Западный (Орегон)
  • Азиатско-Тихоокеанский регион (Сингапур)
  • Азиатско-Тихоокеанский регион (Сидней)
  • Азиатско-Тихоокеанский регион (Токио)
  • Европа (Ирландия)
  • Южная Америка (Сан-Паулу)

Примечание

Эта функция не поддерживается для ведер каталогов.

ID -> (строка)

Контейнер для идентификатора владельца.

Синтаксис JSON:

{
  "Grants": [
    {
      "Grantee": {
        "DisplayName": "string",
        "EmailAddress": "string",
        "ID": "string",
        "Type": "CanonicalUser"|"AmazonCustomerByEmail"|"Group",
        "URI": "string"
      },
      "Permission": "FULL_CONTROL"|"WRITE"|"WRITE_ACP"|"READ"|"READ_ACP"
    }
    ...
  ],
  "Owner": {
    "DisplayName": "string",
    "ID": "string"
  }
}

--bucket (строка)

Имя ведра, содержащего объект, к которому вы хотите прикрепить ACL.

Точки доступа - При использовании этого действия с точкой доступа для ведер общего назначения необходимо указать псевдоним точки доступа вместо имени ведра или указать ARN точки доступа. При использовании этого действия с точкой доступа для ведер каталогов необходимо указать имя точки доступа вместо имени ведра. При использовании ARN точки доступа необходимо направлять запросы на хост точки доступа. Хост точки доступа имеет вид ИмяТочкиДоступа -ИдентификаторАккаунта .s3-accesspoint.*Регион* .amazonaws.com. При использовании этого действия с точкой доступа через Amazon Web Services SDKs необходимо указать ARN точки доступа вместо имени ведра. Дополнительную информацию об ARN точек доступа см. в разделе Использование точек доступа в руководстве пользователя Amazon S3.

S3 на Outposts - При использовании этого действия с S3 на Outposts необходимо направлять запросы на хост S3 на Outposts. Хост S3 на Outposts имеет вид `` ИмяТочкиДоступа -ИдентификаторАккаунта .*ИдентификаторOutpost* .s3-outposts.*Регион* .amazonaws.com``. При использовании этого действия с S3 на Outposts целевое ведро должно быть ARN точки доступа Outposts или псевдонимом точки доступа. Дополнительную информацию о S3 на Outposts см. в разделе Что такое S3 на Outposts? в руководстве пользователя Amazon S3.

--content-md5 (строка)

MD5-кодированный 128-битный MD5-дайджест данных. Этот заголовок должен использоваться в качестве проверки целостности сообщения для проверки того, что тело запроса не было повреждено во время передачи. Дополнительная информация доступна в RFC 1864.

Для запросов, выполненных с помощью Amazon Web Services Command Line Interface (CLI) или Amazon Web Services SDKs, это поле вычисляется автоматически.

--checksum-algorithm (строка)

Указывает алгоритм, используемый для создания контрольной суммы объекта при использовании SDK. Этот заголовок не предоставит дополнительных функций, если вы не используете SDK. При отправке этого заголовка необходимо отправить соответствующий заголовок x-amz-checksum или x-amz-trailer. В противном случае Amazon S3 отклонит запрос со статусом HTTP 400 Bad Request . Дополнительную информацию см. в разделе Проверка целостности объекта в руководстве пользователя Amazon S3.

Если вы предоставляете отдельную контрольную сумму, Amazon S3 игнорирует указанный параметр ChecksumAlgorithm.

Возможные значения:

  • CRC32
  • CRC32C
  • SHA1
  • SHA256
  • CRC64NVME

--grant-full-control (строка)

Предоставляет получателю права чтения, записи, чтения ACL и записи ACL для ведра.

Эта функция не поддерживается для Amazon S3 на Outposts.

--grant-read (строка)

Разрешает получателю просматривать список объектов в ведре.

Эта функция не поддерживается для Amazon S3 на Outposts.

--grant-read-acp (строка)

Разрешает получателю читать ACL ведра.

Эта функция не поддерживается для Amazon S3 на Outposts.

--grant-write (строка)

Разрешает получателю создавать новые объекты в ведре.

Для владельцев ведра и объектов также разрешены удаление и перезапись этих объектов.

--grant-write-acp (строка)

Разрешает получателю изменять ACL для соответствующего ведра.

Эта функция не поддерживается для Amazon S3 на Outposts.

--key (строка)

Ключ, для которого было инициировано действие PUT.

--request-payer (строка)

Подтверждает, что запрашивающий знает, что ему будут взиматься платежи за запрос. Владельцам ведра не нужно указывать этот параметр в своих запросах. Если у исходного или целевого ведра S3 включен Requester Pays, запрашивающий оплатит соответствующие расходы на копирование объекта. Информацию о загрузке объектов из ведер с Requester Pays см. в разделе Загрузка объектов из ведер с Requester Pays в руководстве пользователя Amazon S3.

Примечание

Эта функция не поддерживается для ведер каталогов.

Возможные значения:

  • requester

--version-id (строка)

Идентификатор версии, используемый для ссылки на определенную версию объекта.

Примечание

Эта функция не поддерживается для ведер каталогов.

--expected-bucket-owner (строка)

Идентификатор учетной записи ожидаемого владельца ведра. Если предоставленный вами идентификатор учетной записи не совпадает с фактическим владельцем ведра, запрос завершается с кодом состояния HTTP 403 Forbidden (доступ запрещен).

--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 (boolean)

Включить отладку.

--endpoint-url (string)

Переопределить URL по умолчанию команды на указанный URL.

--no-verify-ssl (boolean)

По умолчанию AWS CLI использует SSL при общении с AWS-сервисами. Для каждого SSL-соединения AWS CLI проверяет SSL-сертификаты. Этот параметр переопределяет поведение проверки SSL-сертификатов по умолчанию.

--no-paginate (boolean)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (string)

Стиль форматирования вывода команд.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (string)

Запрос JMESPath для фильтрации данных ответа.

--profile (string)

Использовать определенный профиль из файла учетных данных.

--region (string)

Регион для использования. Переопределяет настройки конфигурации/окружения.

--version (string)

Отобразить версию этого инструмента.

--color (string)

Включить/выключить цветной вывод.

  • on
  • off
  • auto

--no-sign-request (boolean)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент предоставлен.

--ca-bundle (string)

Файл с сертификатами CA для проверки SSL-сертификатов. Переопределяет настройки конфигурации/окружения.

--cli-read-timeout (int)

Максимальное время чтения сокета в секундах. Если значение равно 0, чтение сокета будет выполняться без блокировки и таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (int)

Максимальное время подключения сокета в секундах. Если значение равно 0, подключение сокета будет выполняться без блокировки и таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (string)

Стиль форматирования, используемый для двоичных блоков. Формат по умолчанию — 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 (boolean)

Отключить постраничный вывод.

--cli-auto-prompt (boolean)

Автоматически запросить параметры ввода CLI.

--no-cli-auto-prompt (boolean)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Для использования следующих примеров необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в Руководстве пользователя AWS CLI.

Если не указано иное, все примеры используют правила цитирования, подобные unix-like. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. См. Использование кавычек со строками в Руководстве пользователя AWS CLI.

Следующая команда предоставляет full control двум пользователям AWS (user1@example.com и user2@example.com) и read разрешение всем:

aws s3api put-object-acl --bucket amzn-s3-demo-bucket --key file.txt --grant-full-control emailaddress=user1@example.com,emailaddress=user2@example.com --grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers

Подробнее о настраиваемых ACL см. http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTacl.html (команды s3api ACL, такие как put-object-acl, используют ту же сокращенную нотацию аргументов).

Вывод

RequestCharged -> (string)

Если присутствует, указывает, что запрос был успешно оплачен запрашивающим.

Примечание

Эта функциональность не поддерживается для ведер каталогов.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API