Огляд
Під час цього практичного заняття ви навчитеся працювати в ролі користувача сервісного облікового запису, а також дізнаєтесь, як призначати ролі.
Цілі
Під час цього практичного заняття ви навчитеся виконувати наведені нижче дії.
- Керувати доступом за допомогою IAM
- Обмежувати доступ до певних функцій або ресурсів
- Працювати в ролі користувача сервісного облікового запису
Налаштування й вимоги
Для кожного практичного заняття ви безкоштовно отримуєте новий проект Google Cloud і набір ресурсів на визначений період часу.
-
Натисніть кнопку Почати заняття. Якщо за практичне заняття необхідно заплатити, відкриється спливаюче вікно, де ви зможете обрати спосіб оплати.
Ліворуч розміщено панель Відомості про практичне заняття з такими компонентами:
- кнопка Відкрити консоль Google;
- час до закінчення;
- тимчасові облікові дані, які потрібно використовувати для доступу до цього практичного заняття;
- інша інформація, необхідна для виконання цього практичного заняття.
-
Натисніть Відкрити консоль Google або натисніть правою кнопкою миші й виберіть Відкрити анонімне вікно, якщо ви використовуєте вебпереглядач Chrome.
Завантажаться необхідні ресурси. Потім відкриється нова вкладка зі сторінкою Вхід.
Порада. Упорядковуйте вкладки в окремих вікнах, розміщуючи їх поруч.
Примітка. Якщо з’явиться вікно Виберіть обліковий запис, натисніть Вибрати інший обліковий запис.
-
За потреби скопіюйте значення в полі Username (Ім’я користувача) нижче й вставте його у вікні Вхід.
{{{user_0.username | "Username"}}}
Поле Username (Ім’я користувача) також можна знайти на панелі Відомості про практичне заняття.
-
Натисніть Next (Далі).
-
Скопіюйте значення в полі Password (Пароль) нижче й вставте його у вікні Welcome (Привітання).
{{{user_0.password | "Password"}}}
Поле Password (Пароль) також можна знайти на панелі Відомості про практичне заняття.
-
Натисніть Next (Далі).
Важливо. Обов’язково використовуйте облікові дані, призначені для відповідного практичного заняття. Не використовуйте облікові дані Google Cloud.
Примітка. Якщо ввійти у власний обліковий запис Google Cloud, може стягуватися додаткова плата.
-
Що від вас очікується
- Прийміть Умови використання.
- Не додавайте способи відновлення й двохетапну перевірку (оскільки це тимчасовий обліковий запис).
- Не реєструйте безкоштовні пробні версії.
Через кілька секунд Google Cloud Console відкриється в новій вкладці.
Примітка. Щоб переглянути меню зі списком продуктів і сервісів Google Cloud, натисніть меню навігації вгорі ліворуч або введіть назву сервісу чи продукту в полі пошуку.
Завдання 1. Виконайте вхід за допомогою облікових даних двох користувачів
У цьому завданні ви налаштуєте практичне заняття для двох користувачів – Username 1 (Користувач 1) і Username 2 (Користувач 2).
Увійдіть у консоль Cloud за допомогою першого набору облікових даних
- Під час виконання цього практичного заняття ви використовуватимете два імені користувача. Їх можна переглянути на сторінці Connection Details (Відомості про підключення). Увійдіть у консоль Cloud в анонімному вікні за допомогою облікових даних користувача 1 (Username 1), наданих платформою Qwiklabs. Зверніть увагу, що для обох імен користувача призначено один пароль.
Увійдіть у консоль Cloud за допомогою другого набору облікових даних
- Відкрийте нову вкладку в анонімному вікні вебпереглядача.
- Перейдіть на сторінку console.cloud.google.com.
- Натисніть значок користувача у верхньому правому куті екрана, а потім – Add account (Додати обліковий запис).
- Увійдіть у консоль Cloud за допомогою облікових даних користувача 2 (Username 2), наданих платформою Qwiklabs.
Примітка. Якщо під час виконання цього практичного заняття ви вийдете з облікового запису Username 1 (Користувач 1), сервіс Qwiklabs видалить профіль Username 2 (Користувач 2). Не виходьте з облікового запису Username 1 (Користувач 1), доки не закінчите працювати в профілі Username 2 (Користувач 2).
Завдання 2. Ознайомтеся з принципами роботи в консолі IAM
У цьому завданні ви ознайомитесь із консоллю IAM, використовуючи облікові дані профілів Username 1 (Користувач 1) і Username 2 (Користувач 2).
Переконайтеся, що у вас відкрито вкладку консолі Cloud із профілем Username 1 (Користувач 1).
Відкрийте консоль IAM і ознайомтеся з доступними ролями
- У меню навігації (
) на консолі Google Cloud натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM (Керування ідентифікацією і доступом).
- Натисніть Grant Access (Надати доступ) і ознайомтеся з доступними ролями в спадному меню.
Відкрийте меню Roles (Ролі), щоб переглянути ролі, пов’язані з окремими ресурсами.
- Натисніть CANCEL (СКАСУВАТИ).
- Перейдіть на вкладку консолі Cloud із профілем Username 2 (Користувач 2).
- У меню навігації (
) натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM. На сторінці Qwiklabs Connection Details (Відомості про підключення) перегляньте список рядків із назвами, пов’язаними з профілями Username 1 (Користувач 1) і Username 2 (Користувач 2).
Примітка. Наразі обліковий запис Username 2 (Користувач 2) має доступ до проєкту, але не має ролі "Власник", а тому не може редагувати ролі інших. Наведіть курсор на значок олівця біля профілю Username 2 (Користувач 2), щоб пересвідчитись у цьому.
- Поверніться на вкладку консолі Cloud із профілем Username 1 (Користувач 1).
- У консолі IAM натисніть значок олівця біля профілю Username 2 (Користувач 2). Зараз для профілю Username 2 (Користувач 2) призначено роль Viewer (Користувач із правами перегляду). Не змінюйте цю роль.
- Натисніть CANCEL (СКАСУВАТИ).
Завдання 3. Підготуйте ресурс для тестування доступу
У цьому завданні ви створите сегмент Cloud Storage і завантажите тестовий файл із локального комп’ютера в сегмент Cloud Storage, а також підтвердите, що Username 2 (Користувач 2) бачить створений сегмент.
Створіть сегмент і завантажте тестовий файл
-
Якщо потрібно, перейдіть на вкладку консолі Cloud із профілем Username 1 (Користувач 1).
-
У меню навігації (
) на консолі Google Cloud натисніть Cloud Storage > Buckets (Сегменти).
-
Натисніть + Create (+ Створити).
-
Укажіть наведені нижче відомості, а решту налаштувань залиште зі значеннями за умовчанням.
Властивість |
Значення (укажіть значення або виберіть зі списку) |
Name (Назва) |
Введіть глобально унікальну назву |
Location type (Тип місцезнаходження) |
Multi-region (Мультирегіон) |
Примітка. Запишіть назву сегмента. Ви будете вставляти її пізніше замість фрагмента "[YOUR_BUCKET_NAME]"
- Натисніть CREATE (СТВОРИТИ).
Примітка. Якщо з’явиться вікно Public access will be prevented (Загальний доступ буде заборонено) і біля опції Enforce public access prevention on this bucket (Заборонити загальний доступ до цього сегмента) поставлено прапорець, натисніть Confirm (Підтвердити).
- Натисніть Upload (Завантажити) і виберіть Upload file (Завантажити файл) зі спадного меню.
- Завантажте тестовий файл із локального комп’ютера.
- Коли файл буде завантажено, натисніть значок із трьома крапками в кінці рядка з файлом і виберіть Rename (Перейменувати).
- Змініть назву файлу на sample.txt і натисніть RENAME (ПЕРЕЙМЕНУВАТИ).
Щоб підтвердити виконання завдання, натисніть Підтвердити виконання.
Створіть сегмент і завантажте тестовий файл
Перевірте доступ для користувача з правами перегляду для проєкту
-
Перейдіть на вкладку консолі Cloud із профілем Username 2 (Користувач 2).
-
У консолі Cloud відкрийте меню навігації > Cloud Storage > Buckets (Сегменти).
-
Переконайтеся, що Username 2 (Користувач 2) бачить створений сегмент.
Завдання 4. Скасуйте доступ до проекту
У цьому завданні ви вилучите роль із правами перегляду проекту для профілю Username 2 (Користувач 2) і перевірите, чи втратив користувач доступ до проекту.
Вилучіть роль із правами перегляду проекту для профілю Username 2 (Користувач 2)
- Перейдіть на вкладку консолі Cloud із профілем Username 1 (Користувач 1).
- У меню навігації (
) на консолі Google Cloud натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM (Керування ідентифікацією і доступом).
- Виберіть профіль Username 2 (Користувач 2) і натисніть Remove Access (Скасувати доступ).
Примітка. Переконайтеся, що ви збираєтеся скасувати доступ для профілю Username 2 (Користувач 2). Якщо ви помилково скасуєте доступ для профілю Username 1 (Користувач 1), практичне заняття доведеться починати з початку.
- Натисніть CONFIRM (ПІДТВЕРДИТИ), щоб скасувати доступ.
Зверніть увагу, що після цього користувач зникне зі списку й більше не матиме доступу до проєкту.
Щоб підтвердити виконання завдання, натисніть Підтвердити виконання.
Скасуйте доступ до проєкту
Переконайтеся, що користувач 2 більше не має доступу
-
Перейдіть на вкладку консолі Cloud із профілем Username 2 (Користувач 2).
-
У меню навігації (
) на консолі Cloud натисніть Cloud overview (Огляд Cloud) > Dashboard (Інформаційна панель).
-
У меню навігації (
) на консолі Cloud натисніть Cloud Storage > Buckets (Сегменти).
Станеться помилка (якщо ні, оновіть сторінку). Обліковий запис Google Cloud Username 2 (Користувач 2) більше не має доступу до проєкту.
Завдання 5. Додайте доступ до Cloud Storage
У цьому завданні ви призначите профілю Username 2 (Користувач 2) роль із правами перегляду об’єктів Storage і перевірите, чи було обмежено доступ користувача до Cloud Storage.
Додайте дозволи для Cloud Storage
- Скопіюйте облікові дані Username 2 (Користувач 2) зі сторінки Qwiklabs Connection Details (Відомості про підключення).
- Перейдіть на вкладку консолі Cloud із профілем Username 1 (Користувач 1).
- У меню навігації (
) на консолі Google Cloud натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM (Керування ідентифікацією і доступом).
- Щоб додати користувача, натисніть Grant Access (Надати доступ).
- У полі New principals (Нові учасники) вставте облікові дані Username 2 (Користувач 2), скопійовані зі сторінки Qwiklabs Connection Details (Відомості про підключення).
- У меню Select a role (Вибрати роль) виберіть Cloud Storage > Storage Object Viewer (Користувач із правами перегляду об’єктів Cloud Storage).
- Натисніть SAVE (ЗБЕРЕГТИ).
Щоб підтвердити виконання завдання, натисніть Підтвердити виконання.
Додайте дозволи для Cloud Storage
Переконайтеся, що користувач 2 має доступ до Cloud Storage
- Перейдіть на вкладку консолі Cloud із профілем Username 2 (Користувач 2).
Примітка. Профілю Username 2 (Користувач 2) не призначено роль із правами перегляду для проєкту, тому такий користувач не бачитиме в консолі інформацію про цей проєкт або його ресурси. Однак у нього є спеціальні права доступу до Cloud Storage.
- Щоб запустити Cloud Shell, натисніть Activate Cloud Shell (Активувати Cloud Shell) (
). За потреби натисніть Continue (Продовжити).
- Щоб переглянути вміст створеного раніше сегмента, виконайте таку команду, попередньо замінивши фрагмент
[YOUR_BUCKET_NAME]
на унікальну назву цього сегмента Cloud Storage:
gcloud storage ls gs://[YOUR_BUCKET_NAME]
Профіль Username 2 (Користувач 2) має обмежений доступ до Cloud Storage.
- Закрийте вкладку консолі Cloud із профілем Username 2 (Користувач 2).
Тепер ви виконуватимете практичне заняття на вкладці консолі Cloud із профілем Username 1 (Користувач 1).
- Перейдіть на вкладку консолі Cloud із профілем Username 1 (Користувач 1).
Завдання 6. Налаштуйте роль користувача сервісного облікового запису
У цьому завданні ви призначите обмежені дозволи для сервісних облікових записів і навчитеся працювати в ролі користувача сервісного облікового запису.
Створіть сервісний обліковий запис
- У меню навігації (
) на консолі Google Cloud натисніть IAM & Admin (Адміністрування й керування ідентифікацією і доступом) > Service Accounts (Сервісні облікові записи).
- Натисніть + CREATE SERVICE ACCOUNT (+ СТВОРИТИ СЕРВІСНИЙ ОБЛІКОВИЙ ЗАПИС).
- У полі Service account name (Назва сервісного облікового запису) введіть read-bucket-objects.
- Натисніть CREATE AND CONTINUE (СТВОРИТИ Й ПРОДОВЖИТИ).
- У меню Select a role (Вибрати роль) виберіть Cloud Storage > Storage Object Viewer (Користувач із правами перегляду об’єктів Cloud Storage).
- Натисніть CONTINUE (ПРОДОВЖИТИ).
- Натисніть DONE (ГОТОВО).
Додайте користувача в сервісний обліковий запис
- Виберіть сервісний обліковий запис read-bucket-objects.
- Натисніть значок із трьома крапками праворуч назви сервісного облікового запису. Потім натисніть Manage permissions (Керувати дозволами).
Примітка. Ви призначите роль користувача сервісного облікового запису, яка дає змогу використовувати такий обліковий запис для роботи з віртуальною машиною (якщо надано відповідні права доступу). Цю роль можна призначити для окремого користувача, групи або домену. Ви виконаєте такі дії для всіх співробітників компанії Altostrat.com (цю компанію вигадано для використання під час практичного заняття).
- Натисніть кнопку GRANT ACCESS (НАДАТИ ДОСТУП). Укажіть наведені нижче відомості, а решту налаштувань залиште зі значеннями за умовчанням.
Властивість |
Значення (укажіть значення або виберіть зі списку) |
New principals (Нові учасники) |
altostrat.com |
Role (Роль) |
Service Accounts > Service Account User (Сервісні облікові записи > Користувач сервісного облікового запису) |
- Натисніть SAVE (ЗБЕРЕГТИ).
Надайте доступ до Compute Engine
Тепер ви призначите роль адміністратора Compute Engine для всіх учасників організації Altostrat.
- У меню навігації (
) на консолі Cloud натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM (Керування ідентифікацією і доступом).
- Натисніть Grant access (Надати доступ).
- Укажіть наведені нижче відомості, а решту налаштувань залиште зі значеннями за умовчанням.
Властивість |
Значення (укажіть значення або виберіть зі списку) |
New principals (Нові учасники) |
altostrat.com |
Select a role (Виберіть роль) |
Compute Engine > Compute Instance Admin (v1) (Адміністратор екземпляра Compute, версія 1) |
- Натисніть SAVE (ЗБЕРЕГТИ).
Примітка. У цьому кроці ви навчитеся надавати необхідний доступ для окремого користувача.
Ви надасте користувачу обмежений доступ до екземпляра віртуальної машини. Він зможе підключитися до віртуальної машини через протокол SSH і виконувати певні завдання адміністрування.
Створіть віртуальну машину в ролі користувача сервісного облікового запису
- У меню навігації (
) на консолі Cloud натисніть Compute Engine > VM instances (Екземпляри віртуальних машин).
- Натисніть CREATE INSTANCE (СТВОРИТИ ЕКЗЕМПЛЯР).
- Укажіть наведені нижче відомості, а решту налаштувань залиште зі значеннями за умовчанням.
Властивість |
Значення (укажіть значення або виберіть зі списку) |
Name (Назва) |
demoiam |
Region (Регіон) |
|
Zone (Зона) |
|
Series (Серія) |
E2 |
Machine Type (Тип машини) |
e2-micro (2 віртуальні ЦП, 1 ГБ пам’яті) |
-
Натисніть OS and storage (ОС і сховище).
Натисніть Change (Змінити) і виберіть наведені нижче значення.
-
Operating System (Операційна система):
Debian
-
Version (Версія):
Debian GNU/Linux 12 (bookworm)
Натисніть Select (Вибрати).
-
Виберіть розділ Security (Безпека).
- Для параметра Service account (Сервісний обліковий запис) виберіть read-bucket-objects.
- У розділі Access scopes (Області доступу) виберіть Set access for each API (Налаштування доступу для кожного API).
- Для параметра Storage (Сховище) виберіть Read Write (Перегляд/запис).
-
Натисніть Create (Створити).
Щоб підтвердити виконання завдання, натисніть Підтвердити виконання.
Налаштуйте роль користувача сервісного облікового запису й створіть віртуальну машину
Завдання 7. Ознайомтеся з можливостями ролі користувача сервісного облікового запису
У цьому завданні ви маєте тестовий доступ, що дає змогу підключатися до віртуальної машини через протокол SSH і виконувати наведені нижче дії. Як власник проекту, ви вже маєте роль користувача сервісного облікового запису. Тепер ви спробуєте підключитися з консолі Cloud до віртуальної машини через протокол SSH як користувач.
Ви виконуватимете всі дії так, як це робитиме звичайний користувач.
Виконайте завдання в ролі користувача сервісного облікового запису
- Натисніть SSH, щоб запустити термінал і підключитися до demoiam.
- Виконайте цю команду:
gcloud compute instances list
Результати (приклад виводу):
WARNING: Some requests did not succeed.
- Request had insufficient authentication scopes.
Що сталося? Чому?
- Скопіюйте файл sample.txt зі створеного раніше сегмента. Зверніть увагу, що крапка в кінці наведеної нижче команди є її частиною (вона позначає, що файл потрібно скопіювати в "певне місцеположення").
gcloud storage cp gs://[YOUR_BUCKET_NAME]/sample.txt .
Результати (приклад виводу):
Copying gs://train-test-iam/sample.txt...
/ [1 files][ 28.0 B/ 28.0 B]
Operation completed over 1 objects/28.0 B.
- Щоб перейменувати скопійований файл, виконайте таку команду:
mv sample.txt sample2.txt
- Щоб скопіювати перейменований файл у сегмент, виконайте таку команду:
gcloud storage cp sample2.txt gs://[YOUR_BUCKET_NAME]
Результати (приклад виводу):
AccessDeniedException: 403 Caller does not have storage.objects.create access to bucket train-test-iam.
Примітка. Що сталося?
Оскільки ви підключилися до екземпляра через протокол SSH, то можете виконувати дії з правами сервісного облікового запису, маючи відповідні дозволи.
Для сервісного облікового запису, у якому було створено екземпляр, призначено роль користувача з правами перегляду для Cloud Storage, що дає змогу завантажувати в проєкт об’єкти із сегментів GCS.
Щоб переглядати екземпляри в проєкті, потрібно мати дозвіл compute.instance.list. Через те, що для сервісного облікового запису не було надано такого дозволу, ви не змогли переглянути запущені в проєкті екземпляри.
Оскільки сервісний обліковий запис мав дозвіл на завантаження об’єктів, їх вдалося завантажити із сегмента. Ви отримали сповіщення 403 access denied через відсутність дозволу на запис об’єктів для цього облікового запису.
- У меню навігації (
) на консолі Google Cloud натисніть IAM & admin (Адміністрування й керування ідентифікацією і доступом) > IAM (Керування ідентифікацією і доступом).
- Перегляньте список рядків із написом read-bucket-objects і натисніть значок олівця. Зараз для сервісного облікового запису read-bucket-objects призначено роль Storage Object Viewer (Користувач із правами перегляду об’єктів Cloud Storage). Змініть Role (Роль) на Cloud Storage > Storage Object Creator (Користувач із правом створювати об’єкти Cloud Storage).
- Натисніть Save (Зберегти)
- Поверніться до вікна SSH для екземпляра demoiam
- Щоб скопіювати перейменований файл у сегмент, виконайте таку команду:
gcloud storage cp sample2.txt gs://[YOUR_BUCKET_NAME]
Тепер команду виконано успішно, оскільки для сервісного облікового запису надано відповідні дозволи.
Завдання 8. Перевірка
Під час цього практичного заняття ви навчилися надавати й скасовувати ролі користувачів у IAM (спочатку для профілю Username 2 (Користувач 2), а потім – для користувача сервісного облікового запису). Ви застосували облікові дані користувача сервісного облікового запису під час роботи з віртуальною машиною, щоб створити спеціальні авторизовані хости-бастіони.
Завершіть завдання
Закінчивши виконувати завдання, натисніть кнопку End Lab (Завершити завдання). Google Cloud Skills Boost вилучить використані ресурси й очистить обліковий запис.
Ви зможете оцінити, наскільки вам сподобалося виконувати завдання на платформі. Виберіть потрібну кількість зірочок, введіть коментар і натисніть Submit (Надіслати).
Кількість зірочок відповідає певній оцінці:
- 1 зірочка = зовсім не сподобалося
- 2 зірочки = не сподобалося
- 3 зірочки = не можу сказати напевно
- 4 зірочки = сподобалося
- 5 зірочок = дуже сподобалося
Якщо ви не хочете надсилати відгук, просто закрийте діалогове вікно.
Залишайте свої відгуки, пропозиції або коментарі на вкладці Support (Підтримка).
© Google LLC 2022. Усі права захищено. Назва та логотип Google є торговельними марками Google LLC. Усі інші назви компаній і продуктів можуть бути торговельними марками відповідних компаній, з якими вони пов’язані.