Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Object Storage
  • Правила тарификации
  • Справочник Terraform
    • Аутентификация в API
      • Как пользоваться API
      • Подписывание запросов
      • Начало работы с S3 API
        • Все сервисы и методы
          • Все методы
          • XML-структура конфигурации CORS
          • upload
          • get
          • delete
        • Общие заголовки запросов
        • Общие заголовки ответов
        • Ответы
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Логи бакета
  • История изменений
  • Вопросы и ответы
  • Обучающие курсы

В этой статье:

  • Элементы
  • Пример
  1. Справочник API
  2. REST (совместимый с Amazon S3)
  3. REST
  4. CORS
  5. XML-структура конфигурации CORS

CORS-конфигурация бакетов

Статья создана
Yandex Cloud
Обновлена 29 сентября 2025 г.
  • Элементы
  • Пример

Object Storage позволяет управлять конфигурацией CORS бакета. Для загрузки конфигурации CORS в Object Storage необходимо сформировать XML-документ, описанный в этом разделе. Скачивая существующую конфигурацию, вы получаете документ такого же формата.

Общий вид конфигурации:

<ListBucketResult
          xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
          <KeyCount>1</KeyCount>
          <Name>my-sample-bucket</Name>
          <Prefix></Prefix>
          <MaxKeys>1000</MaxKeys>
          <IsTruncated>false</IsTruncated>
          <Contents>
              <Key>text.txt</Key>
              <LastModified>2025-05-15T07:23:08.030Z</LastModified>
              <Owner>
                  <ID>ajegtlf2q28a********</ID>
                  <DisplayName>ajegtlf2q28a********</DisplayName>
              </Owner>
              <ETag>&#34;f75a361db63aa4722fb8e083********&#34;</ETag>
              <Size>103</Size>
              <StorageClass>STANDARD</StorageClass>
              <TagSet></TagSet>
          </Contents>
      </ListBucketResult>

Конфигурация может содержать не более 100 правил.

ЭлементыЭлементы

Элемент Описание
CORSConfiguration Корневой элемент конфигурации CORS. Не может содержать более 100 элементов CORSRule

Путь: /CORSConfiguration.
CORSRule Правило для фильтрации входящих запросов к ресурсу. Каждое правило должно содержать хотя бы по одному элементу AllowedMethod и AllowedOrigin.

Путь: /CORSConfiguration/CORSRule.
ID Уникальный идентификатор правила (не более 255 символов).

Необязательный. Можно использовать для поиска правила в файле.

Путь: /CORSConfiguration/CORSRule/ID.
AllowedMethod HTTP метод (PUT, GET, HEAD, POST, DELETE), разрешенный для использования при кросс-доменном запросе. Каждый метод следует указать в отдельном элементе. Обязательно указать хотя бы один метод.

Путь: /CORSConfiguration/CORSRule/AllowedMethod.
AllowedOrigin Сайт, с которого разрешены кросс-доменные запросы к бакету. Должен быть указан хотя бы один элемент AllowedOrigin.

Может содержать не более одного символа *. Примеры: http://*.example.com, *.

Путь: /CORSConfiguration/CORSRule/AllowedOrigin.
AllowedHeader Разрешенный заголовок в запросе к объекту. Если разрешенных заголовков несколько, то каждый следует указать в отдельном AllowedHeader. В имени заголовка можно использовать один символ * для определения шаблона, например <ListBucketResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"> <KeyCount>1</KeyCount> <Name>my-sample-bucket</Name> <Prefix></Prefix> <MaxKeys>1000</MaxKeys> <IsTruncated>false</IsTruncated> <Contents> <Key>text.txt</Key> <LastModified>2025-05-15T07:23:08.030Z</LastModified> <Owner> <ID>ajegtlf2q28a********</ID> <DisplayName>ajegtlf2q28a********</DisplayName> </Owner> <ETag>&#34;f75a361db63aa4722fb8e083********&#34;</ETag> <Size>103</Size> <StorageClass>STANDARD</StorageClass> <TagSet></TagSet> </Contents> </ListBucketResult> означает, что разрешены все заголовки.

Запрос методом options содержит заголовок Access-Control-Request-Headers. Object Storage сопоставляет заголовки, переданные в Access-Control-Request-Headers, с набором AllowedHeader и отвечает на options списком разрешенных.

Путь: /CORSConfiguration/CORSRule/AllowedHeader.
MaxAgeSeconds Время в секундах, в течение которого браузер сохраняет в кеше результат запроса к объекту методом options.

Путь: /CORSConfiguration/CORSRule/MaxAgeSeconds.
ExposeHeader Заголовок, разрешенный к показу в JavaScript-приложении в браузере. Если допустимы несколько заголовков, то укажите каждый из них в отдельном элементе.

В запросе к объекту JavaScript-клиент может оперировать только заголовками, определенными в элементах ExposeHeader.

Путь: /CORSConfiguration/CORSRule/ExposeHeader.

ПримерПример

Приведенная ниже конфигурация позволяет отправлять кросс-доменные запросы с сайта http://www.example.com методами PUT, POST, DELETE без ограничений по заголовкам.

<CORSConfiguration>
    <CORSRule>
        <AllowedOrigin>http://www.example.com</AllowedOrigin>
        <AllowedMethod>PUT</AllowedMethod>
        <AllowedMethod>POST</AllowedMethod>
        <AllowedMethod>DELETE</AllowedMethod>
        <AllowedHeader>*</AllowedHeader>
    </CORSRule>
</CORSConfiguration>

См. такжеСм. также

  • Начало работы с AWS S3 API в Yandex Object Storage

  • Отладка запросов с помощью утилиты AWS CLI

  • Пример отправки подписанного запроса с помощью утилиты curl

  • Пример кода для генерации подписи

  • Настройка CORS

Была ли статья полезна?

Предыдущая
Все методы
Следующая
upload
Проект Яндекса
© 2025 ООО «Яндекс.Облако»