Базовое руководство по управлению услугами VPC I

1. Введение

VPC Service Controls (VPC-SC) — это средство контроля безопасности на уровне организации в Google Cloud, позволяющее корпоративным клиентам снижать риски утечки данных. VPC Service Controls обеспечивает доступ в стиле «нулевого доверия» к многопользовательским сервисам, позволяя клиентам ограничивать доступ к авторизованным IP-адресам, контексту клиента и параметрам устройства при подключении к многопользовательским сервисам из интернета и других сервисов, чтобы уменьшить как преднамеренные, так и непреднамеренные потери. Вы можете использовать VPC Service Controls для создания периметров, защищающих ресурсы и данные сервисов, которые вы явно указываете.

Цели данного учебного пособия:

  • Разберитесь в основах управления службами VPC.
  • Создайте периметр обслуживания VPC.
  • Защитите проект с помощью VPC Service Controls.
  • Устранение ошибки, связанной с нарушением входящего трафика в настройках VPC Service Controls.

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

Для выполнения этого урока нам необходимы следующие предварительные условия:

  • Организация, работающая по принципам GCP.
  • Папка в разделе «Организация».
  • В одной и той же организации в папке размещены 2 проекта GCP.
  • Необходимые разрешения на уровне организации.
  • Счет для выставления счетов по обоим проектам.

1a62ebea85d6d4fc.png

Настройка ресурсов

  1. В консоли Google Cloud создайте папку в разделе «Организация» и два новых проекта ( вы можете использовать существующие ).

(Если у вас еще нет учетной записи Google Workspace/Cloud Identity, вам необходимо ее создать, поскольку для этого руководства вам потребуется организация).

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

f7c75ab82028cb15.png

Расходы

Для использования облачных ресурсов/API необходимо включить оплату в консоли Cloud. Выполнение этого практического задания не потребует больших затрат, если вообще потребует. Чтобы отключить ресурсы и избежать оплаты после завершения этого урока, вы можете удалить созданные ресурсы или удалить проект. Новые пользователи Google Cloud имеют право на бесплатную пробную версию стоимостью 300 долларов США.

Единственный ресурс, который будет оплачиваться, — это экземпляр виртуальной машины. Ориентировочную стоимость можно найти в калькуляторе цен .

3. Создайте периметр.

В этой лаборатории мы выполним следующие этапы:

  1. В консоли Google выберите свою организацию и перейдите в раздел «Управление доступом к службе VPC» . Убедитесь, что вы находитесь на уровне организации.

43d5af2d5f084bb4.png

  1. Нажмите «Управление политиками», чтобы создать новую политику доступа , которая будет распространяться на папку «Codelab».

9f75d949ca9992c4.png

  1. Создайте новый периметр в режиме принудительной защиты. В этом руководстве назовем его "SuperProtection".
  • При создании периметра выберите проект, для которого будут применяться ограничения, как ProjectZ.
  • Выберите тип периметра «Обычный».
  • В диалоговом окне « Укажите службы для ограничения доступа » выберите службу для ограничения доступа как «Compute Engine».

Схема расположения элементов по периметру должна выглядеть следующим образом:

914d603103cb21.png

4. Убедитесь, что периметр соблюдается.

  1. Зайдите в ProjectX и проверьте, можете ли вы получить доступ к API Compute Engine, посетив главную страницу экземпляров виртуальных машин. Вы должны иметь такую ​​возможность, поскольку ProjectX не защищен периметром созданной VPC SC.
  2. Откройте ProjectZ и проверьте, можете ли вы получить доступ к Compute Engine . Вы увидите, что запрос был запрещен средствами контроля служб VPC, поскольку периметр службы SuperProtection защищает API ProjectZ и Compute Engine.

d5073543f783e9c7.png

5. Устранение неполадок, связанных с отказом в обслуживании.

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

  1. Журналы VPC Service Controls содержат подробную информацию о запросах к защищаемым ресурсам и причинах отклонения запроса системой VPC Service Controls. Давайте найдем уникальный идентификатор VPC Service Controls в журналах аудита ProjectZ, используя следующий запрос в Logs Explorer:
resource.type="audited_resource"
protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"

Здесь отобразятся все журналы аудита VPC Service Controls. Нам понадобится последний журнал ошибок.

  1. Щелкните в заголовке «Управление службами VPC» и выберите «Устранение неполадок, связанных с отказом», после чего откроется средство устранения неполадок управления службами VPC .

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

Для выполнения этого упражнения нам потребуется следующее:

"principalEmail": "user@domain"
"callerIp": "PUBLIC_IP_ADDRESS"
"serviceName": "compute.googleapis.com"
"servicePerimeterName":
"accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection
"ingressViolations": [
        {
"targetResource": "projects/[PROJECT_NUMBER]",
"servicePerimeter": "accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection"
        }
      ],
"violationReason": "NO_MATCHING_ACCESS_LEVEL",
"resourceNames": "[PROJECT_ID]"

В ProjectZ у нас есть два варианта решения этой проблемы.

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

В этом руководстве мы будем устранять неполадки, создавая уровень доступа .

  1. Перейдите в «Менеджер контекста доступа» в области «Папка (Codelab)» и создайте новый уровень доступа.
  2. Используйте «Базовый режим», и мы предоставим доступ при соблюдении требований к IP-подсети и географическому местоположению.

678f0f9d7bac921d.png

  1. Перейдите в раздел «Управление службами VPC» в области «Организационная сфера». Выберите политику доступа для этого практического занятия и отредактируйте созданный нами ранее периметр.
  2. Добавьте уровень доступа, созданный в области действия папки, и сохраните.

c0af5691dfe9dd75.png

6. Результаты испытаний.

Убедитесь, что у нас есть доступ к Compute Engine и мы можем создать экземпляр виртуальной машины. Теперь, когда мы определили уровень доступа, давайте попробуем получить доступ к Compute Engine в ProjectZ и создать экземпляр виртуальной машины.

  1. Перейдите в Compute Engine и нажмите «Создать экземпляр».

c1206aaf18497ec1.png

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

Примерно через минуту вы увидите созданный экземпляр виртуальной машины и сможете убедиться, что у вас есть полный доступ к защищенному внутри периметра Compute Engine.

5b2ded02f669b2ef.png

7. Уборка

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

  1. Чтобы удалить экземпляр виртуальной машины, установите флажок слева от имени экземпляра виртуальной машины, а затем нажмите кнопку «Удалить» .

da0abf0894fe03cd.png

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

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

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

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

Лицензия

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