Управление службами VPC – защита службы передачи данных BigQuery

1. Введение

В этой лабораторной работе мы научимся защищать службу передачи данных BigQuery с помощью VPC Service Controls при передаче данных из Cloud Storage в набор данных BigQuery. Затем мы защитим Cloud Storage и повторим процесс для передачи данных из Cloud Storage в BigQuery. Защита Cloud Storage приводит к нарушению VPC Service Controls, которое необходимо исправить для успешной передачи. В конце мы также защитим BigQuery , а затем попытаемся скопировать набор данных между проектами, что также приводит к нарушению, которое необходимо исправить.

В ходе этой лабораторной работы мы рассмотрим, как устранять нарушения входящего и исходящего трафика, используя правила входящего и исходящего трафика соответственно. Мы также будем использовать уровень доступа для устранения нарушения входящего трафика при передаче данных в BigQuery. Цели этой лабораторной работы:

  • Разберитесь, как устранять нарушения входящего и исходящего трафика, используя правила входящего и исходящего трафика в различных сервисах, в частности, в Cloud Storage, BigQuery и BigQuery Data Transfer Service.
  • Понять, почему произошло конкретное нарушение.

2. Настройка ресурсов и требования

Прежде чем начать

В этом практическом занятии мы предполагаем, что вы уже знаете:

Настраивать

Наша первоначальная конфигурация выглядит следующим образом:

Схема первоначальной настройки Codelab

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

В этом практическом занятии мы будем использовать стандартную систему защиты периметра сервиса project-2 .

В рамках perimeter-2 ограничьте использование BigQuery Data Transfer API .

Настройки VPC SC, защищающие службу передачи данных.

Создание хранилища Cloud Storage и набора данных BigQuery.

Для целей данного практического занятия достаточно любого CSV-файла, независимо от его содержимого. Основное ограничение связано с требованием размещения оборудования в дата-центре , которое обязывает:

  • Если ваш набор данных BigQuery находится в нескольких регионах, то сегмент Cloud Storage, содержащий передаваемые данные, должен находиться в том же многорегиональном регионе или в местоположении, входящем в состав этого многорегионального региона.
  • Если ваш набор данных находится в определенном регионе, то и ваш сегмент Cloud Storage должен находиться в том же регионе.

В дальнейшем в рамках этого практического занятия мы будем следить за тем, чтобы и хранилище Cloud Storage, и набор данных BigQuery находились в одном или нескольких регионах.

Создайте новый сегмент Cloud Storage в проекте project-1

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

  • В поле "Имя корзины" введите имя, соответствующее требованиям к имени корзины . В рамках данного практического занятия мы назовем codelab-bqtransfer-bucket .
  • Для указания места хранения данных и местоположения корзины выберите тип местоположения и местоположение , где данные корзины будут храниться постоянно. В этом практическом задании мы будем использовать США (несколько регионов в Соединенных Штатах) .

Настройка создания облачного хранилища.

Создайте CSV-файл

С локального компьютера или через Cloud Shell мы можем использовать команду echo для создания образца CSV-файла, codelab-test-file.csv , с помощью следующих команд:

echo "name,age" > codelab-test-file.csv; \
echo "Alice,10" >> codelab-test-file.csv; \
echo "Bob,20" >> codelab-test-file.csv; \
echo "Carol,30" >> codelab-test-file.csv; \
echo "Dan,40" >> codelab-test-file.csv; \
echo "Eve,50" >> codelab-test-file.csv; \
echo "Frank,60" >> codelab-test-file.csv; \
echo "Grace,70" >> codelab-test-file.csv; \
echo "Heidi,80" >> codelab-test-file.csv;

Загрузите CSV-файл в хранилище Cloud Storage.

После создания CSV-файла выполните следующую команду, чтобы загрузить файл в созданный бакет :

gcloud storage cp codelab-test-file.csv gs://codelab-bqtransfer-bucket

Выполните команду `cp`, чтобы загрузить CSV-файл в облачное хранилище.

Вы можете убедиться, что файл был загружен в созданный бакет, выведя список объектов в бакете или выполнив следующую команду:

gcloud storage ls --recursive gs://codelab-bqtransfer-bucket/**

Создайте набор данных и таблицу BigQuery в project-2

  1. Создайте набор данных BigQuery в проекте project-2 , выполнив следующие шаги .
    1. В поле «Идентификатор набора данных» введите уникальное имя набора данных . Для данного практического занятия мы используем: codelab_bqtransfer_dataset .
    2. В поле «Тип местоположения» выберите географическое местоположение для набора данных. В этом практическом задании мы используем то же местоположение, что и в хранилище Cloud Storage: США (несколько регионов в Соединенных Штатах) . Создание набора данных в BigQuery.
  2. Создайте таблицу BigQuery в созданном наборе данных codelab_bqtransfer_dataset , выполнив следующие шаги .
    1. В разделе «Источник» в списке «Создать таблицу из » выберите «Пустая таблица» .
    2. В поле «Таблица» введите имя таблицы, которую вы хотите создать. Для этого практического занятия мы используем имя: codelab-bqtransfer-table .
    3. Убедитесь, что для поля «Тип таблицы» установлено значение «Собственная таблица».
    4. В разделе «Схема» введите определение схемы . Вы можете ввести информацию о схеме, нажав «Редактировать как текст» и указав следующую схему, соответствующую формату созданного CSV-файла.
    [{
    "name": "name",
    "type": "STRING",
    "mode": "NULLABLE",
    "description": "The name"
    },
    {
    "name": "age",
    "type": "INTEGER",
    "mode": "NULLABLE",
    "description": "The age"
    }]
    

Расходы

Для использования облачных ресурсов/API необходимо включить оплату в проектах project-2 и project-1 . Мы рекомендуем отключить используемые ресурсы, чтобы избежать дополнительных расходов после завершения этого практического занятия.

Затраты покрываются ресурсами BigQuery и Cloud Storage. Ориентировочную стоимость можно найти в калькуляторе цен BigQuery и калькуляторе Cloud Storage .

3. Настройка передачи данных из объекта облачного хранилища в таблицу BigQuery.

Теперь мы попробуем создать службу передачи данных (в project-2 ) для передачи данных из Cloud Storage (расположенного в project-1 ) в BigQuery (расположенного в project-2 ), при этом используя VPC Service Controls для защиты службы передачи данных BigQuery в project-2 Защита только службы передачи данных BigQuery (без защиты BigQuery и Cloud Storage) ограничивает субъектов возможностью только создания и управления передачей данных (например, ручного запуска передачи данных).

Настройка передачи данных из облачного хранилища.

Для осуществления передачи данных выполните следующие шаги:

  1. Перейдите на страницу BigQuery в консоли Google Cloud project-2 .
  2. Нажмите «Передача данных» .

На странице службы передачи данных отображается сообщение об ошибке VPC SC.

Проведите расследование нарушения при доступе к странице передачи данных.

В консоли Google Cloud можно увидеть уникальный идентификатор VPC Service Controls. Используйте этот же идентификатор для фильтрации журналов и определения деталей нарушений (замените OBSERVED_VPCSC_DENIAL_UNIQUE_ID на идентификатор наблюдаемого отказа):

protoPayload.metadata.@type="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
protoPayload.metadata.vpcServiceControlsUniqueId="OBSERVED_VPCSC_DENIAL_UNIQUE_ID"

Обнаруженное нарушение — NO_MATCHING_ACCESS_LEVEL , представляющее собой нарушение входящего трафика с подробностями, аналогичными следующим:

ingressViolations: [
0: {
servicePerimeter: "accessPolicies/987654321/servicePerimeters/perimeter-2"
targetResource: "projects/[PROJECT2_NUMBER]"
}]
violationReason: "NO_MATCHING_ACCESS_LEVEL"
callerIp: "USER_PUBLIC_IP_ADDRESS"
resource: {
labels: {
method: "google.cloud.bigquery.datatransfer.v1.DataTransferService.ListTransferConfigs"
project_id: "project-2"
service: "bigquerydatatransfer.googleapis.com"
}
type: "audited_resource"
}

При попытке доступа к странице передачи данных осуществляется попытка отобразить список всех настроенных передач данных; следовательно, это является нарушением метода ListTransferConfigs .

Исправлена ​​ошибка, связанная с сервисом bigquerydatatransfer.googleapis.com

Для устранения нарушений входящего трафика можно использовать уровень доступа или правило входящего трафика. В этом практическом задании мы будем использовать правило входящего трафика, настроенное с идентификатором пользователя, которому запрещен доступ, что разрешает доступ к сервису bigquerydatatransfer.googleapis.com и всем его методам.

Правило входящего трафика, разрешающее методы передачи данных.

После настройки правила входящего трафика доступ к странице передачи данных должен работать без проблем.

Возобновить настройку передачи данных из облачного хранилища.

На странице «Передача данных» (после нажатия на кнопку «Передача данных») выполните следующие действия, описанные в предыдущих шагах:

  1. Нажмите + Создать перевод .
  2. В разделе «Тип источника» в поле «Источник» выберите Google Cloud Storage .
  3. В разделе «Имя конфигурации переноса» в поле «Отображаемое имя» введите имя для переноса, например, Codelab Transfer .
  4. В разделе «Параметры расписания» :
    1. Выберите частоту повтора, например, 15 минут.
    2. Обязательно выберите «Начать сейчас» ; в противном случае передача данных начнется только после истечения заданной частоты повтора.
  5. В разделе «Настройки назначения» в поле «Набор данных назначения» выберите набор данных, который вы создали для хранения ваших данных: codelab_bqtransfer_dataset
  6. В разделе « Подробности источника данных»
    1. В поле «Целевая таблица» введите имя вашей целевой таблицы. Целевая таблица должна соответствовать правилам именования таблиц . Для этой практической работы мы будем использовать таблицу, которую создали ранее: codelab-bqtransfer-table
    2. В поле URI облачного хранилища введите URI облачного хранилища . Для этого практического занятия мы используем созданный сегмент и файл: codelab-bqtransfer-bucket/codelab-test-file.csv
    3. В настройках записи оставьте APPEND (или выберите MIRROR ).
    4. НЕ выбирайте опцию удаления файлов после передачи (поскольку мы будем использовать один и тот же файл несколько раз. Однако вы можете использовать несколько файлов и удалить исходные файлы после передачи).
    5. В поле «Формат файла» выберите CSV.
    6. В разделе «Параметры передачи» , в поле «CSV» , в качестве разделителя полей введите запятую (",") .
  7. В меню «Учетная запись службы» выберите учетную запись службы из списка учетных записей служб, связанных с вашим проектом Google Cloud.
    1. Выбранная учетная запись службы должна обладать необходимыми разрешениями для доступа к облачному хранилищу в проекте, на котором размещен сегмент хранилища; в данном практическом задании это project-1 .
    2. Для этой практической работы мы будем использовать учетную запись службы, созданную в project-2 с адресом codelab-sa@project-2.iam.gserviceaccount.com .
  8. Нажмите « Сохранить ».

Поскольку мы выбрали опцию «Начать сейчас» в качестве параметра расписания, как только будет выбрана опция «Сохранить» , начнётся первая передача данных.

Проверьте состояние службы передачи данных.

Для проверки состояния настроенной передачи данных:

Вакансии в службе передачи данных.

Нажмите на кнопку Codelab Transfer (в поле «Отображаемое имя»), и отобразится список всех выполненных на данный момент запусков.

Подробная информация о работе службы передачи данных.

Передача данных должна пройти успешно, без нарушений правил управления службами VPC как для передачи данных, инициированной вручную, так и для запланированной передачи. Обратите внимание, что правило входящего трафика, разрешающее доступ к субъекту, инициирующему передачу вручную, требуется только для передачи, инициированной вручную.

4. Ограничения по IP-адресам для передачи данных, инициируемой вручную.

Текущие настроенные правила входящего трафика позволяют настроенному идентификатору запускать передачу данных вручную с любого IP-адреса.

Использование уровней доступа позволяет VPC Service Controls ограничивать разрешенный доступ по определенным атрибутам запросов API, в частности:

  • IP-подсети: проверяет, исходит ли запрос с конкретного IP-адреса.
  • Регионы: проверяет, поступает ли запрос из определенного региона, который определяется геолокацией IP-адреса.
  • Principals: проверяет, поступает ли запрос с конкретного аккаунта.
  • Политика устройства: проверяет, поступает ли запрос от устройства, отвечающего определенным требованиям.

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

Доступ защищен VPC SC по IP-адресу пользователя. На этой диаграмме показан доступ, инициированный двумя субъектами ( user@example.com и user2@example.com ) в трех сценариях, демонстрирующий, как VPC Service Controls оценивает источники (уровень входящего доступа) и атрибуты идентификации как условие И, где оба параметра должны совпадать.

  1. Пользователю user@example.com разрешен доступ при попытке доступа с IP-адреса, разрешенного уровнем доступа, поскольку его IP-адрес и учетная запись пользователя соответствуют конфигурациям входящего правила.
  2. Пользователю user@example.com блокируется доступ, если его IP-адрес не совпадает с разрешенным IP-адресом, несмотря на то, что его учетная запись настроена в правиле входящего трафика.
  3. Пользователю user2@example.com заблокирован доступ, несмотря на попытку доступа с разрешенного IP-адреса, поскольку его учетная запись не разрешена правилом входящего трафика.

Создать уровень доступа

Для создания уровня доступа, ограничивающего доступ по IP-адресу :

  1. Откройте страницу «Менеджер контекста доступа» в консоли Google Cloud.
    • Если появится запрос, выберите папку codelab-folder .
  2. В верхней части страницы «Диспетчер контекста доступа» нажмите кнопку «СОЗДАТЬ УРОВЕНЬ ДОСТУПА» .
  3. В панели «Новый уровень доступа» присвойте новому уровню доступа заголовок . В рамках этого практического занятия мы назовем его project_2_al .
  4. В разделе «Условия» нажмите кнопку «+» перед IP-подсетями .
  5. В поле «IP-подсети» выберите «Публичный IP-адрес» .

Добавьте уровень доступа в правило входящего трафика.

В правиле входящего трафика уровень доступа указывается в поле sources , которое является обязательным, как описано в справочнике по правилам входящего трафика . Для разрешения входящего трафика к ресурсам VPC Service Controls оценивает атрибуты sources и identityType как условие И. Правило входящего трафика использует идентификатор субъекта, запускающего передачу данных вручную, а не учетную запись службы, указанную в конфигурации передачи данных.

Правило входящего трафика настроено с указанием уровня доступа.

Повторите передачу с настройками, ограничивающими доступ по IP-адресу.

Для оценки эффективности примененных конфигураций повторно запустите передачу, используя следующие сценарии:

  • используя IP-адрес из диапазона, разрешенного уровнем доступа, указанным в правиле входящего трафика.
  • использование IP-адреса, не разрешенного настройками

Доступ с разрешенных IP-адресов должен быть успешным, тогда как доступ с запрещенных IP-адресов должен завершиться неудачей и привести к нарушению правил управления службами VPC.

Простой способ проверить использование другого IP-адреса — разрешить назначение IP-адреса в консоли Google Cloud, а затем проверить это в Cloud Shell.

В оболочке Cloud Shell выполните следующую команду, чтобы вручную запустить передачу , заменив значения RUN_TIME и RESOURCE_NAME:

bq mk \
  --transfer_run \
  --run_time='RUN_TIME' \
  RESOURCE_NAME

Например, следующая команда выполняется немедленно для передачи конфигурации 12345678-90ab-cdef-ghij-klmnopqrstuv в проекте 1234567890 .

NOW=$(TZ=GMT date +"%Y-%m-%dT%H:%M:%SZ");
bq mk \
  --transfer_run \
  --run_time=$NOW \
  projects/1234567890/locations/us/transferConfigs/12345678-90ab-cdef-ghij-klmnopqrstuv

Полученные данные указывают на нарушение правил управления службами VPC, что и ожидалось, поскольку данный IP-адрес недопустим.

Нарушение VPC SC из-за недопустимого IP-адреса.

Обнаруженное нарушение находится в методе DataTransferService.StartManualTransferRuns .

ingressViolations: [
0: {
servicePerimeter: "accessPolicies/987654321/servicePerimeters/perimeter-2"
targetResource: "projects/[PROJECT2_NUMBER]"
targetResourcePermissions: [0: "vpcsc.permissions.unavailable"]
}]
violationReason: "RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER"
resource: {
labels: {
method: "google.cloud.bigquery.datatransfer.v1.DataTransferService.StartManualTransferRuns"
project_id: "project-2"
service: "bigquerydatatransfer.googleapis.com"
}
type: "audited_resource"
}
severity: "ERROR"

5. Начало передачи данных при одновременной защите облачного хранилища.

Поскольку мы выполняем перенос данных из Cloud Storage в BigQuery, давайте добавим Cloud Storage в список сервисов, защищенных с помощью VPC Service Controls, и посмотрим, останется ли перенос успешным.

В конфигурации perimeter-2 добавьте Cloud Storage API в качестве одной из ограниченных служб, наряду с BigQuery Data Transfer API .

Настройки VPC SC для защиты облачного хранилища.

После защиты API облачного хранилища дождитесь следующей запланированной передачи данных или запустите передачу вручную, выполнив следующие шаги:

  1. Перейдите на страницу BigQuery в консоли Google Cloud.
  2. Нажмите «Передача данных» .
  3. Выберите свой способ передачи данных из списка: для этого семинара мы используем Codelab Transfer.
  4. Нажмите « Запустить передачу сейчас»
  5. Нажмите ОК .

Будет инициирована еще одна передача. Возможно, вам потребуется обновить страницу, чтобы увидеть ее. На этот раз передача завершится с ошибкой нарушения правил управления службами VPC.

Нарушение VPC SC при копировании набора данных BigQuery.

Расследование нарушения правил управления службой VPC облачного хранилища

Фильтрация журналов аудита осуществляется с использованием параметра vpcServiceControlsUniqueIdentifier , как показано в сводке переноса.

Выявленное нарушение — это нарушение исходящего трафика RESOURCES_NOT_IN_SAME_SERVICE_PERIMETER со следующими подробностями:

  • В качестве основного пользователя используется учетная запись службы, настроенная в службе передачи данных (независимо от того, запущена ли передача данных вручную или выполняется по расписанию, запрещенный основной пользователь будет одним и тем же).
  • Затронутая услуга: облачное хранилище.
  • Источником запроса является проект, в котором настроена служба передачи данных: project-2
  • Целевым проектом является проект, в котором расположен объект Cloud Storage: project-1
principalEmail: "codelab-sa@project-2.iam.gserviceaccount.com"
egressViolations: [
0: {
servicePerimeter: "accessPolicies/987654321/servicePerimeters/perimeter-2"
source: "projects/[PROJECT2_NUMBER]"
sourceType: "Resource"
targetResource: "projects/[PROJECT1_NUMBER]"
targetResourcePermissions: [0: "storage.objects.get"]
}]
labels: {
method: "google.storage.objects.get"
project_id: "project-2"
service: "storage.googleapis.com"
}

Устраните нарушение правил исходящего трафика облачного хранилища.

Для устранения нарушения исходящего трафика необходимо использовать правило исходящего трафика, разрешающее трафик от запрещенной учетной записи службы к проекту с объектами Cloud Storage.

Правило исходящего трафика для разрешения доступа учетной записи службы codelab.

После изменения параметра периметра обслуживания perimeter-2 повторите процесс, чтобы снова запустить передачу. При этом ошибка не будет отображаться.

Подробная информация о передаче данных отображается после настройки правила исходящего трафика.

6. Скопируйте набор данных BigQuery из проекта 2 в проект 1.

После подтверждения возможности переноса данных из хранилища Cloud Storage в project-1 в набор данных BigQuery в project-2 , давайте скопируем набор данных BigQuery из project-2 в project-1 , при этом API BigQuery будет защищен средствами управления службами VPC.

Для создания и копирования набора данных мы будем использовать команду bq mk , которая задействует инструмент bq .

Создайте целевой набор данных в project-1

Перед копированием набора данных необходимо сначала создать целевой набор данных. Для создания целевого набора данных можно выполнить следующую команду, которая создаст набор данных с именем copied_dataset в проекте project-1 , указав в качестве местоположения us .

bq mk \
  --dataset \
  --location=us \
  project-1:copied_dataset

Защитите сервис BigQuery в project-2 с помощью VPC Service Controls.

Измените конфигурацию периметра perimeter perimeter-2 и добавьте API BigQuery в качестве защищаемой службы, а также службы передачи данных BigQuery и облачного хранилища .

VPC SC настроен для защиты API облачного хранилища.

Инициировать копирование набора данных

Чтобы скопировать набор данных, выполните следующую команду bq mk , которая скопирует набор данных codelab_bqtransfer_dataset из проекта project-2 в набор данных copied_dataset в project-1 и перезапишет содержимое набора данных, если таковое имеется.

bq mk \
  --transfer_config \
  --project_id=project-1 \
  --target_dataset=copied_dataset \
  --data_source=cross_region_copy \
  --display_name='Dataset from project-2 to project-1' \
  --params='{
     "source_dataset_id":"codelab_bqtransfer_dataset",
     "source_project_id":"project-2",
     "overwrite_destination_table":"true"
     }'

Команда будет выполнена успешно; тем временем конфигурация передачи будет успешно создана для начала операции копирования набора данных. Копирование самого набора данных завершится ошибкой, связанной с нарушением правил управления службами VPC.

Чтобы найти подробную информацию о нарушении правил управления службами VPC, проверьте журналы в project-2 (проект исходного набора данных) с помощью следующего запроса к журналам. Запрос к журналам фильтрует журналы по службе BigQuery и имени ресурса копируемого набора данных ( codelab_bqtransfer_dataset ).

resource.labels.service="bigquery.googleapis.com"
protoPayload.metadata.resourceNames:"datasets/codelab_bqtransfer_dataset"

Выявленное нарушение правил управления службами VPC представляет собой нарушение исходящего трафика из project-2 в project-1 .

egressViolations: [
  0: {
   servicePerimeter: "accessPolicies/987654321/servicePerimeters/perimeter-2"
   source: "projects/[PROJECT-2-NUMBER]"
   sourceType: "Resource"
   targetResource: "projects/[PROJECT-1-NUMBER]"
   targetResourcePermissions: [
     0: "bigquery.transfers.update"
     1: "bigquery.transfers.get"
     2: "bigquery.jobs.create"
     ]
   }
]
method: "bigquery.tables.getData"
service: "bigquery.googleapis.com"

Устраните все нарушения BigQuery и начните копирование набора данных заново.

Для устранения нарушения исходящего трафика необходимо создать правило исходящего трафика, разрешающее доступ для запрещенного субъекта. Запрещенный субъект — это тот, кто выполняет команду mk .

Правило исходящего трафика, разрешающее доступ ко всем методам BigQuery.

После того, как правило исходящего трафика будет настроено, на периметре perimeter-2 выполните ту же команду для копирования набора данных. На этот раз копирование набора данных должно пройти успешно и без нарушений правил управления службами VPC.

7. Уборка

Хотя за использование VPC Service Controls, когда услуга не используется, отдельная плата не взимается, рекомендуется очистить конфигурацию, используемую в этой лабораторной работе. Вы также можете удалить экземпляр виртуальной машины и/или облачные проекты, чтобы избежать дополнительных расходов. Удаление облачного проекта прекращает выставление счетов за все ресурсы, используемые в этом проекте.

  • Чтобы удалить сегмент Cloud Storage , выполните следующие действия:
    • В консоли Google Cloud перейдите на страницу «Облачные хранилища» .
    • Установите флажок напротив элемента, который нужно удалить, а затем нажмите кнопку «Удалить» .
    • В появившемся окне подтвердите, что хотите удалить корзину и ее содержимое. Удаление сегмента облачного хранилища.
  • Для удаления набора данных BigQuery выполните следующие действия:
    • В консоли Google Cloud перейдите на страницу BigQuery .
    • В панели «Проводник» разверните свой проект и выберите набор данных.
    • Разверните меню с тремя точками и нажмите «Удалить» .
    • В диалоговом окне «Удалить набор данных» введите delete в поле и нажмите кнопку «Удалить» . Удаление набора данных BigQuery.
  • Для удаления зоны обслуживания выполните следующие действия:
    • В консоли Google Cloud выберите «Безопасность» , а затем «Управление службами VPC» на уровне, к которому применяется политика доступа, в данном случае — на уровне папки.
    • На странице «Управление службами VPC» в строке таблицы, соответствующей периметру, который вы хотите удалить, выберите Delete Icon .
  • Чтобы удалить уровень доступа , выполните следующие действия:
    • В консоли Google Cloud откройте страницу «Менеджер контекста доступа» в области папок.
    • В таблице найдите строку с уровнем доступа, который вы хотите удалить, выберите меню с тремя точками , а затем выберите «Удалить» .
  • Для завершения проектов выполните следующие шаги:
    • В консоли Google Cloud перейдите на страницу «Настройки IAM и администрирования» проекта, который вы хотите удалить.
    • На странице «Настройки IAM и администрирования» выберите «Завершение работы» .
    • Введите идентификатор проекта и выберите «В любом случае завершить работу» .

8. Поздравляем!

В этом практическом задании вы создали периметр управления службами VPC, обеспечили его соблюдение и устранили неполадки.

Узнать больше

Вы также можете рассмотреть следующие сценарии:

  • Добавьте project-1 в другой периметр, который также защитит BigQuery, службу передачи данных BigQuery и облачное хранилище.
  • Выполните перенос данных BigQuery из других поддерживаемых источников .
  • Ограничьте доступ пользователей по другим параметрам, таким как местоположение или политика устройства.

Лицензия

Данная работа распространяется под лицензией Creative Commons Attribution 2.0 Generic.