0. Введение
https://cloud.google.com/
Billing Accaunt - привязка вашей кредитной карты (Кто платит)
Project - линкуется к Billing Accaunt (За что платим)
1. Google cloud console \ создание \ gcloud
#!!! для проектов
#!!! подымается виртульная машина linux дистрибутив debian
#!!! доступно 5Gb диского пространства
#!!! эта виртульная машина бесплатна
#!!! имеет доступ к интернету
#!!! можно устанавливать по
#!!! sudo apt install tree - например можно поставить tree
gcloud config set project [PROJECT_ID] - смена проекта
gcloud projects list - посмотреть все проекты
gcloud auth list - посмотреть аккаунты которые могут управлять GCP
Computer Engine - в этом разделе происходит создание виртуалок ...
2. Установка и настройка Cloud SDK/GCP CLI на Windows
# Зачем это надо?
# Если вам нужно управлять GCP с вашего ПК с windows консоле powershell сервисами GCP
# Ищем в поиске google =>>>>>> gcp cloud install
https://cloud.google.com/sdk/docs/quickstart-windows - инструкция
https://dl.google.com/dl/cloudsdk/channels/rapid/GoogleCloudSDKInstaller.exe - качать нужно это
gcloud --version - открываем powershell и проверяем работоспасобность GCP
gcloud init - выполняем подключение GCP, откроется браузер и нужно будет ввести учетные данные google, или если откроется chrome и вы уже авторезированны в google будет запрошенно разрешение.
#!!! Внимание команда "gcloud init" выполняется один раз, далее просто открыаем powershell и пользуемся командами gcloud.
gcloud auth list - посмотреть аккаунты которые могут управлять GCP
gcloud projects list - посмотреть доступные проекты
3. Установка и настройка Cloud SDK/GCP CLI на Linux
# Зачем это надо?
# Если вам нужно управлять GCP с вашего ПК с windows консоле powershell сервисами GCP
# Ищем в поиске google =>>>>>> gcp cloud install
https://cloud.google.com/sdk/docs/quickstart-debian-ubuntu - инструкция
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
sudo apt-get update
sudo apt-get install google-cloud-sdk
gcloud --version - открываем powershell и проверяем работоспасобность GCP
gcloud init - выполняем подключение GCP, откроется браузер и нужно будет ввести учетные данные google, или если откроется chrome и вы уже авторезированны в google будет запрошенно разрешение.
#!!! внимание если браузер не открылся, в консоле будет написан линк, его можно скопировать и открыть в браузере вручную
#!!! Внимание команда "gcloud init" выполняется один раз, далее просто открыаем powershell и пользуемся командами gcloud.
gcloud auth list - посмотреть аккаунты которые могут управлять GCP
gcloud projects list - посмотреть доступные проекты
4. IAM \ Права доступа \ Users \ Groups \ Permissions \ Roles
AD = Active Directory
GCP Users - это учетная запись авторизированная google, например GMAIL
Создание Users происходит в Google Admin G-Suite или интегрированной системе (например Active Directory)
Удаление Users происходит в Google Admin G-Suite или интегрированной системе (например Active Directory)
GCP Groups
Создание Groups происходит в Google Admin G-Suite или интегрированной системе (например Active Directory)
Удаление Groups происходит в Google Admin G-Suite или интегрированной системе (например Active Directory)
Удаление и добавление пользователя в группы происходит в Google Admin G-Suite или интегрированной системе (например Active Directory)
GCP - IAM Permissions
Permission - это разрешение выполнять одно определенное действие
Permission - это разрешение выполнять одно определенное действие
Permission - это разрешение выполнять одно определенное действие
Формат:
Service.Resource.Verb
Примеры:
compute.instances.create - сервис compute, ресурс instances, действие create, разрешение создовать серверы в проекте
compute.instances.delete - сервис compute, ресурс instances, действие delete, разрешение удалять серверы в проекте
compute.instances.start - сервис compute, ресурс instances, действие start, разрешить включать серверы в проекте
compute.instances.stop - сервис compute, ресурс instances, действие stop, разрешить выключать серверы в проекте
storage.buckets.create - сервис storage, ресурс buckets, действие create, разрегить создание бакетов (как бы папка, хранилище...)
storage.objects.create - сервис storage, ресурс objects, действие create, разрешить создание обьектов в бакетах
storage.backets.list - сервис storage, ресурс backets, действие list, разрешить показ сущетвуюшие бакеты
storage.objects.list - сервис storage, ресурс objects, действие list, разрешить просмотр содержимое в бакетах
и т.д. их примерно ~1000 штук
GCP - IAM Roles
Role - это колекция или набор Permissions
Primitive Roles - Сделаны Google, назначаются на уровне каждого Project, четыре штуки/ Browser, Editor, Owner, Viewer
!!! Primitive Roles дают очень широкие прова. На практике страраются ими не пользоватся.
Browser (roles/browser) - важная роль, назначается проктически всем
Viewer (roles/viewer) - readonly на все в проекте !!! Эта например роль подайтет для аудитора
Editor (roles/editor) - измененеие всего кроме biling
Owner (roles/owner) - все вместе взятое, browser+viewer+editor
Predefined Roles - Сделаны Google, состоит из коллекции определенных Permissions
Compute Instance Admin (roles/compute.instanceAdmin) - роль админства серверов в инстансе
Storage Admin (roles/storage.admin)
Storage Object Admin (roles/storage.objectAdmin)
Storage Object Viewer (roles/objectViewer)
Cloud SQL Admin (roles/cloudsql.Admin)
Cloud SQL Viewer (roles/Cloudsql.viewer)
Custom Roles - ваши самодельные роли
GCP - User/Group Permissions, Custom Role
Назначение прав доступа для User/Groups происходит в Google Cloud Platform IAM & admin
Создание Custom IAM Role происходит в Goole Cloud Platform IAM & admin
!!! Google рекомендует использовать предустановленные роли.
!!! С кастомными ролями мргут быть проблемы.
!!! Так как Google постоянно добовляет новые permissions.
!!! Кастомные роли сложна редактировать для пользователя. Всегда может чегото не хватать.
5. Иерархия GCP: Organization, Folder, Project, Resource
GCP - Organization
Высший компонент Иерархии GCP
Доступ на этом уровне в IAM распространяется на всё ниже описанное (Уровень Бога)
Может состоять из Project или Folder
GCP - Folder
Доступ на этом уровне в IMA распространяется на все Folders и Projects внутри
GCP - Project
Доступ на этом уровне в IMA распространяется только на этот Project
Может состоять из Resources
Все ресурсы создаются в проектах.
