Облачная платформаAdvanced

Настройка контроля доступа к API

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

Политики контроля доступа — это тип мер безопасности, предоставляемых APIG. Их можно использовать для разрешения или запрета доступа к API с определённых IP-адресов, имён учётных записей или идентификаторов учётных записей.

Политики контроля доступа вступают в силу для API только в том случае, если они привязаны к API.

Ограничения

  • API может быть привязан только к одной политике контроля доступа того же типа ограничения в среде, однако каждая политика контроля доступа может быть привязана к нескольким API.
  • Политики независимы от API. Политика вступает в силу для API только после их взаимной привязки. При привязке политики к API необходимо указать среду, в которой API был опубликован. Политика действует для API только в указанной среде.
  • После привязки политики к API, отвязки политики от API или обновления политики повторно публиковать API не требуется.
  • Вывод API из эксплуатации не влияет на привязанные к нему политики. Политики остаются привязанными к API, если API будет опубликован повторно.
  • Политики, привязанные к API, нельзя удалить.

Создание политики контроля доступа

  1. Перейдите в консоль APIG.
  2. Выберите выделенный шлюз в верхней части панели навигации.
  1. В панели навигации выберите API Management > API Policies.
  2. На вкладке Policies нажмите Create Policy.
  3. На странице Select Policy Type выберите Access Control в области Traditional Policy.
  4. Установите информацию о политике на основе следующей таблицы.

    Table 1 Параметры настройки контроля доступа

    Параметр

    Описание

    Имя

    Имя политики контроля доступа. Оно может содержать от 3 до 64 символов и должно начинаться с буквы. Разрешены только буквы, цифры и символ подчеркивания (_) .

    Тип

    Тип источника, из которого будут контролироваться вызовы API.

    • IP address: Управление доступом к API по IP-адресу.
    • Account ID: Управление доступом к API на основе аутентификации IAM по идентификатору аккаунта, а не по идентификатору пользователя IAM.

      Укажите один или несколько идентификаторов аккаунтов, разделённых запятыми (,). Каждый идентификатор аккаунта состоит из 32 символов (букв и цифр), разделённых запятыми (,). Максимум 1 024 символа.

    • Account name: Управление доступом к API на основе аутентификации IAM по имени аккаунта, а не по имени пользователя IAM.

      Укажите одно или несколько имён, разделённых запятыми (,). Требования к имени аккаунта: от 1 до 64 символов, без запятых (,) и не состоит полностью из цифр. Общая длина не может превышать 1024 символа.

    ПРИМЕЧАНИЕ:
    • API может быть привязан к двум типам политик контроля доступа: имени аккаунта и идентификатору аккаунта. Если существуют как черный список, так и белый список, запросы API проверяются только по белому списку. Если существует только черный список или только белый список, результаты проверки имени аккаунта и идентификатора аккаунта применяют логическую операцию И.
    • API может быть привязан к трем типам политик контроля доступа: IP address, account name и account ID. IP address и account находятся в отношениях И. Ошибка проверки любого из них приведёт к отказу в доступе к API. Та же логика оценки применяется к API, независимо от того, привязана ли политика, контролирующая доступ с конкретного IP address и account name, или с конкретных IP address и account ID.

    Effect

    Options: Allow и Deny.

    Используйте этот параметр вместе с Type для контроля доступа к API с определённых IP addresses, account names или account IDs.

    IP Addresses

    Требуется только когда Type установлен в IP address.

    IP addresses и диапазоны IP addresses, которые разрешены или запрещены для доступа к API.

    NOTE:

    Можно задать максимум 100 IP addresses соответственно для разрешения или запрета доступа.

    Account ID

    Требуется только когда Type установлен в Account ID.

    Введите account IDs, которые разрешены или запрещены для доступа к API. Для разделения нескольких account IDs используйте запятые (,).

    Нажмите имя пользователя в правом верхнем углу консоли и выберите My Credentials, чтобы получить account ID.

    Account Names

    Требуется только когда Type установлен в Account name.

    Введите имена учетных записей, которые разрешены или запрещены для доступа к API. Используйте запятые (,) для разделения нескольких имён учетных записей.

    Нажмите имя пользователя в правом верхнем углу консоли и выберите My Credentials, чтобы получить имя учетной записи.

  5. Нажмите OK.

    Чтобы клонировать эту политику, нажмите Clone в столбце Operation. Имя клонированной политики не может совпадать с именем любой существующей политики.

  6. После создания политики выполните операции, описанные в Binding the Policy to APIs, чтобы применить политику к API.

Привязка политики к API

  1. Нажмите название политики, чтобы перейти на страницу сведений о политике.
  2. Выберите среду и нажмите Select APIs.
  3. Выберите группу API, среду и необходимые API.

    API можно фильтровать по имени API или тегу. Тег определяется во время создания API.

  4. Нажмите OK.

    • Если API более не нуждается в этой политике, нажмите Unbind в строке, содержащей API.
    • Если есть несколько API, которые более не нуждаются в этой политике, выберите эти API и нажмите Unbind над списком API. Вы можете отвязать политику от максимум 1000 API за один раз.