Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Serverless Containers
  • Сопоставление с другими сервисами Yandex Cloud
    • Все инструкции
    • Получение IAM-токена сервисного аккаунта с помощью контейнера
      • Сделать контейнер публичным
      • Сделать контейнер приватным
      • Посмотреть роли, назначенные на контейнер
      • Назначить роли на контейнер
      • Отозвать роли, назначенные на контейнер
    • Просмотр операций с ресурсами сервиса
  • Управление доступом
  • Инструменты
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • Публичные материалы
  • История изменений
  • Вопросы и ответы
  1. Пошаговые инструкции
  2. Управление правами доступа к контейнеру
  3. Сделать контейнер публичным

Сделать контейнер публичным

Статья создана
Yandex Cloud
Улучшена
mmerihsesh
Обновлена 3 марта 2026 г.

Чтобы любой пользователь мог вызвать контейнер без передачи заголовка авторизации, сделайте контейнер публичным.

Консоль управления
CLI
API
  1. В консоли управления перейдите в каталог, в котором находится контейнер.
  2. Перейдите в сервис Serverless Containers.
  3. Выберите контейнер, который хотите сделать публичным.
  4. На вкладке Обзор включите опцию Публичный контейнер.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

Чтобы сделать контейнер публичным, выполните команду:

yc serverless container allow-unauthenticated-invoke <имя_контейнера>

Результат:

done (1s)

Чтобы сделать контейнер публичным, воспользуйтесь методом REST API setAccessBindings для ресурса Container или вызовом gRPC API ContainerService/SetAccessBindings.

Пример запроса

Чтобы воспользоваться примером, установите cURL и аутентифицируйтесь в API.

  1. Подготовьте файл body.json с телом запроса:

    {
      "accessBindings": [
        {
          "roleId": "serverless-containers.containerInvoker",
          "subject": {
            "id": "allUsers",
            "type": "system"
          }
        }
      ]
    }
    

    Где:

    • roleId — роль, которую нужно назначить. Вызывать контейнер позволяет роль serverless-containers.containerInvoker.
    • id — субъект, которому нужно назначить роль. allUsers — любой пользователь, прохождение аутентификации не требуется.
    • type — тип субъекта, которому назначается роль. system — публичная группа.
  2. Выполните запрос, указав IAM-токен, путь к файлу body.json и идентификатор контейнера:

    curl \
        --request POST \
        --header "Authorization: Bearer <IAM-токен>" \
        --data "@<путь_к_файлу_body.json>" \
        https://serverless-containers.api.cloud.yandex.net/containers/v1/containers/<идентификатор_контейнера>:setAccessBindings
    

    Результат:

    {
     "done": false,
     "metadata": {
      "@type": "type.googleapis.com/yandex.cloud.access.SetAccessBindingsMetadata",
      "resourceId": "bba8dkc667bj********"
     },
     "id": "bbaoi3jn8plq********",
     "description": "operationSetAccessBindings",
     "createdAt": "2023-12-22T10:30:58.348672821Z",
     "createdBy": "aje07l4q4vmo********",
     "modifiedAt": "2023-12-22T10:30:58.348672821Z"
    }
    
  3. Убедитесь, что роль назначена. Для этого выполните запрос, указав IAM-токен и идентификатор контейнера:

    curl \
        --request GET \
        --header "Authorization: Bearer <IAM-токен>" \
        https://serverless-containers.api.cloud.yandex.net/containers/v1/containers/<идентификатор_контейнера>:listAccessBindings
    

    Результат:

    {
     "accessBindings": [
      {
       "subject": {
        "id": "allUsers",
        "type": "system"
       },
       "roleId": "serverless.containers.invoker"
      }
     ]
    }
    

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

Предыдущая
Настроить параметры сервиса метаданных
Следующая
Сделать контейнер приватным
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»