Как повысить безопасность с помощью Управления зонами безопасности VPC

Google Cloud Search поддерживает элементы управления службами VPC для повышения безопасности ваших данных. Элементы управления службами VPC позволяют определить периметр обслуживания вокруг ресурсов Google Cloud Platform, чтобы ограничить доступ к данным и снизить риски утечки данных.

Предпосылки

Прежде чем начать, установите интерфейс командной строки gcloud .

Включить элементы управления службами VPC

Чтобы включить элементы управления службами VPC:

  1. Получите идентификаторы и номера проектов Google Cloud Platform, которые вы хотите использовать. Чтобы получить идентификаторы и номера проектов, см. раздел «Идентификация проектов» .

  2. Используйте gcloud для создания политики доступа для вашей организации Google Cloud Platform:

    1. Получите идентификатор вашей организации .
    2. Создайте политику доступа .
    3. Получите название вашей политики доступа .
  3. Создайте периметр службы с Cloud Search как ограниченной службой, выполнив следующую команду gcloud:

    gcloud access-context-manager perimeters create NAME \
        --title=TITLE \
        --resources=PROJECTS \
        --restricted-services=RESTRICTED-SERVICES \
        --policy=POLICY_NAME
    

    Где:

    • NAME — название периметра.
    • TITLE — понятное для человека название периметра.
    • PROJECTS — это список из одного или нескольких номеров проектов, разделённых запятыми, каждому из которых предшествует строка projects/ . Используйте номера проектов, полученные на шаге 1. Например, если у вас два проекта, project 12345 и 67890 , настройка будет выглядеть так: --resource=projects/12345, project/67890 . Этот флаг поддерживает только номера проектов; он не поддерживает имена и идентификаторы.
    • RESTRICTED-SERVICES — это список одной или нескольких служб, разделённых запятыми. Используйте cloudsearch.googleapis.com .
    • POLICY_NAME — числовое имя политики доступа вашей организации, полученное на шаге 2c.

    Дополнительную информацию о создании периметра обслуживания см. в разделе Создание периметра обслуживания .

  4. (необязательно) Если вы хотите применить ограничения на основе IP-адреса или региона, создайте уровни доступа и добавьте их к периметру обслуживания, созданному на шаге 3:

    1. Чтобы создать уровень доступа, см. раздел Создание базового уровня доступа . Пример создания условия уровня доступа, разрешающего доступ только с определённого диапазона IP-адресов, например, внутри корпоративной сети, см. раздел Ограничение доступа в корпоративной сети .
    2. После создания уровня доступа добавьте его к периметру обслуживания. Инструкции по добавлению уровня доступа к периметру обслуживания см. в разделе Добавление уровня доступа к существующему периметру . Распространение и вступление изменений в силу может занять до 30 минут.
  5. Используйте REST API службы поддержки клиентов Cloud Search для обновления настроек клиента с помощью проекта, защищенного периметром VPC Service Controls:

  1. Получите токен доступа OAuth 2.0 с сервера авторизации Google. Информация о получении токена приведена в шаге 2 раздела «Использование OAuth 2.0 для доступа к API Google» . При получении токена доступа используйте одну из следующих областей действия OAuth: https://www.googleapis.com/auth/cloud_search.settings.indexing , https://www.googleapis.com/auth/cloud_search.settings или https://www.googleapis.com/auth/cloud_search

  2. Выполните следующую команду curl, чтобы задать проект в настройках VPC Service Controls в разделе Customer settings в Google Cloud Search:

    curl --request PATCH \
      'https://cloudsearch.googleapis.com/v1/settings/customer' \
      --header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
      --header 'Accept: application/json' \
      --header 'Content-Type: application/json' \
      --data '{ "vpc_settings": { "project": "projects/PROJECT_ID" } }' \
      --compressed
    

    Где:

  • YOUR_ACCESS_TOKEN — токен доступа OAuth 2.0, полученный на шаге 5а.
  • PROJECT_ID — идентификатор проекта, полученный на шаге 1.

    В случае успеха вы получите ответ 200 OK вместе с обновленными настройками клиента.

После успешного выполнения вышеуказанных шагов ограничения служб VPC, заданные в периметре сервиса, применяются ко всем API Google Cloud Search, поисковым запросам на сайте cloudsearch.google.com , а также к просмотру и изменению конфигурации или отчётов через консоль администратора. Дальнейшие запросы к API Google Cloud Search, не соответствующие уровням доступа, приводят к ошибке PERMISSION_DENIED “Request is prohibited by organization's policy” .