Перейти до основного вмісту

Створення політик доступу та груп доступу

Коли ти створюєш інстанс у IBM Quantum® Platform, для його спільного використання автоматично генерується група доступу. Якщо ти хочеш налаштувати цю групу або створити інші групи доступу — скористайся консоллю IBM® Cloud для Access groups.

Група доступу містить політики, які визначають дії, що члени групи можуть виконувати з певними ресурсами, наприклад сервісами. У цьому посібнику ресурсом здебільшого є інстанс сервісу IBM Quantum.

Додаткові групи доступу можна створювати за допомогою IBM Cloud® консолі, CLI, API, або Terraform.

Важливо

Щоб дізнатись, які дії дозволяє кожна роль, на сторінці IAM Roles обери Qiskit Runtime у випадному меню вгорі сторінки. Для детальнішого списку натисни цифру в колонці поруч із назвою ролі. Наприклад, перейшовши на цю сторінку і натиснувши цифру біля ролі Manager, ти побачиш, що ця роль включає можливість видаляти завдання (quantum-computing.job.delete).

У розділі Порівняння дій попередньо визначених ролей сервісу наведено порівняння попередньо визначених ролей Manager, Writer і Reader.

Створення групи доступу IBM Quantum Administrators

Після налаштування облікового запису для організації рекомендується створити групу доступу IBM Quantum Administrators. Ця група дозволяє іншим користувачам створювати інстанси та керувати ними, а також керувати доступом для сервісу Qiskit Runtime.

Під час створення цієї групи додай такі політики:

  • Сервіс Qiskit Runtime — надати доступ для керування всіма інстансами IBM Quantum в обліковому записі та перегляду аналітики використання.
    • Роль доступу до сервісу Manager
    • Роль керування платформою Administrator
  • Усі сервіси керування обліковим записом — надати доступ для перегляду всіх груп ресурсів в обліковому записі.
    • Роль керування платформою Viewer
  • Усі сервіси керування IAM-обліковим записом — надати доступ для запрошення користувачів, керування групами доступу та створення політик доступу.
    • Роль керування платформою Administrator
  • Сервіс Support Center — надати доступ для відкриття запитів на підтримку через IBM Cloud Support Center.
    • Роль керування платформою Administrator
примітка

Користувачі з роллю керування платформою viewer для «всіх сервісів керування обліковим записом» також зможуть переглядати такі сервіси, як виставлення рахунків. Якщо ти хочеш запобігти цьому додатковому доступу, використай IBM Cloud CLI, щоб надати їм доступ лише до груп ресурсів:

ibmcloud iam access-group-policy-create <group name> --roles Viewer --resource-type resource-group

Скористайся наведеними нижче прикладами, щоб створити групу доступу IBM Quantum Administrators за допомогою IBM Cloud CLI або консолі.

Використання IBM Cloud CLI

Щоб створити групу доступу за допомогою CLI, використай команду ibmcloud iam access-group-create.

ibmcloud iam access-group-create GROUP_NAME [-d, --description DESCRIPTION]

Щоб створити політику групи доступу за допомогою CLI, використай команду ibmcloud iam access-group-policy-create.

ibmcloud iam access-group-policy-create GROUP_NAME {-f, --file @JSON_FILE | --roles ROLE_NAME1,ROLE_NAME2... [--service-name SERVICE_NAME] [--service-instance SERVICE_INSTANCE] [--region REGION] [--resource-type RESOURCE_TYPE] [--resource RESOURCE] [--resource-group-name RESOURCE_GROUP_NAME] [--resource-group-id RESOURCE_GROUP_ID]}

Для створення політик групи доступу Administrators можна використати такий JSON-код:

  • Усі сервіси керування обліковим записом (viewer)
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Viewer"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "[ACCOUNT_ID]"
},
{
"name": "serviceType",
"value": "platform_service"
}
]
}
]
}
  • Сервіс Qiskit Runtime (Manager, Administrator)
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Manager"
},
{
"role_id": "crn:v1:bluemix:public:iam::::role:Administrator"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "[ACCOUNT_ID]"
},
{
"name": "serviceName",
"value": "quantum-computing"
}
]
}
]
}
  • Усі сервіси керування IAM-обліковим записом (administrator)
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Administrator"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "[ACCOUNT_ID]"
},
{
"name": "service_group_id",
"value": "IAM"
}
]
}
]
}
  • Сервіс Support Center (administrator)
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Administrator"
},
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "[ACCOUNT_ID]"
},
{
"name": "serviceName",
"value": "support"
}
]
}
]
}

Використання консолі IBM Cloud IAM

Як власник або адміністратор облікового запису, виконай такі кроки для створення групи доступу IBM Quantum Administrator.

  1. Перейди до Manage > Access (IAM) у консолі IBM Cloud.
  2. На лівій панелі в розділі Manage access натисни Access groups, а потім Create.
  3. У вікні Create access group, що відкриється, додай назву та опис, що відповідають групі користувачів, яких ти запросиш. Наприклад, IBM Quantum Administrators. Натисни Create.

Далі створи політики для сервісу Qiskit Runtime, для всіх сервісів керування IAM-обліковим записом і для всіх сервісів керування обліковим записом.

  1. У щойно створеній групі доступу перейди на вкладку Access і натисни Assign access.

  2. На сторінці Create policy, що відкриється, визнач такі елементи:

    • Service — знайди Qiskit Runtime і вибери його. Натисни Next.
    • Resources — вибери All resources. Натисни Next. Примітка: якщо ти створюєш політику лише для певного інстансу, вибери Specific resources, Service instance, string equals, а потім вибери потрібний інстанс.
    • Roles and actions — вибери такі значення:
      • Для Service access вибери Manager.
      • Для Platform access вибери Administrator.

    Внизу натисни Add. Ти побачиш політику на правій панелі. Натисни Assign внизу цієї панелі.

Ти успішно створив групу доступу з однією політикою. Тепер створи другу політику для того самого інстансу.

  1. У тій самій групі доступу натисни вкладку Access, потім Assign access.
  2. На сторінці Create policy, що відкриється, визнач такі елементи:
    • Service — вибери All IAM Account Management services. Натисни Next.
    • Roles and actions — для Platform access вибери Administrator. Натисни Next. Внизу натисни Add, а потім Assign.

Створи третю політику для того самого інстансу.

  1. У тій самій групі доступу натисни вкладку Access, потім Assign access.
  2. На сторінці Create policy, що відкриється, визнач такі елементи:
    • Service — вибери All Account Management services. Натисни Next.
    • Roles and actions — для Platform access вибери Viewer. Натисни Next. Внизу натисни Add, а потім Assign.

Створи четверту політику для того самого інстансу.

  1. У тій самій групі доступу натисни вкладку Access, потім Assign access.
  2. На сторінці Create policy, що відкриється, визнач такі елементи:
    • Service — вибери Support Center. Натисни Next.
    • Roles and actions — для Platform access вибери Administrator. Натисни Next. Внизу натисни Add, а потім Assign.

Нарешті, додай користувачів до групи доступу. Це можна зробити зі сторінки Users групи доступу або через сторінку Access management у IBM Quantum Platform.

примітка

Запрошувати можна лише тих користувачів, які вже є членами облікового запису. Якщо ти не бачиш користувача на сторінці Add users, спочатку виконай кроки з розділу Запрошення та керування користувачами, щоб додати їх до облікового запису. Після прийняття запрошення їх можна буде додати до групи доступу.

Порівняння дозволів

У таблиці нижче показано, які дозволи надано трьом суб'єктам: власникам облікових записів, IBM Quantum Administrators (див. розділ Створення групи доступу IBM Quantum Administrators) та колаборантам інстансу (група доступу «Collaborators» автоматично генерується щоразу, коли ти створюєш інстанс через IBM Quantum Platform).

Умовні позначення:

✅ Має дозвіл

✴️ Залежить від умов

❌ Не має дозволу

ДозволиВласник облікового записуIBM Quantum Administrators (група доступу)Колаборанти інстансу (група доступу)
Повний доступ до всіх ресурсів IBM Cloud✅ (Лише до інстансів Qiskit Runtime)❌ (Лише до конкретного інстансу Qiskit Runtime)
Призначення доступу іншим✅ (Лише для сервісу Qiskit Runtime)
Створення інстансів сервісу✅ (Весь каталог IBM Cloud)✅ (Лише інстанси сервісу Qiskit Runtime)
Перегляд усіх користувачів✴️ (Залежить від налаштувань видимості користувача)
Налаштування видимості користувачів
Запрошення користувачів до облікового запису
Відповідальність за оплату
Перегляд інформації про оплату
Сповіщення власника
Надсилання квантових завдань✅ (На всіх інстансах Qiskit Runtime)✅ (На всіх інстансах Qiskit Runtime)✅ (Лише на конкретному інстансі Qiskit Runtime)
Перегляд квантових завдань✅ (На всіх інстансах Qiskit Runtime)✅ (На всіх інстансах Qiskit Runtime)✅ (Лише на конкретному інстансі Qiskit Runtime)
Скасування квантових завдань✅ (На всіх інстансах Qiskit Runtime)✅ (На всіх інстансах Qiskit Runtime)✅ (Лише на конкретному інстансі Qiskit Runtime)
Видалення квантових завдань✅ (На всіх інстансах Qiskit Runtime)✅ (На всіх інстансах Qiskit Runtime)
Створення запитів на підтримку✅ (Якщо політика доступу включена до групи доступу)✅ (Якщо група доступу надає доступ до інстансу Premium Plan)
Налаштування постачальника ідентифікаційних даних для підключення зовнішніх репозиторіїв користувачів до облікового запису IBM Cloud

Порівняння дій попередньо визначених ролей сервісу

У таблиці нижче наведено приклади дій, які можуть виконувати попередньо визначені ролі сервісу: Manager, Writer і Reader. Щоб переглянути повний перелік відповідностей між ролями Quantum Service та діями, відвідай цю таблицю у посібнику IBM Cloud Product.

ДіяОписРолі
quantum-computing.session.createСтворити Session/BatchManager, Writer
quantum-computing.job.createНадіслати завданняManager, Writer
quantum-computing.job.readПрочитати результатManager, Reader, Writer
quantum-computing.job.cancelСкасувати завданняManager, Writer
quantum-computing.job.deleteВидалити завданняManager
quantum-computing.direct-access-backend-properties.readПрочитати калібрування QPUManager, Reader, Writer
quantum-computing.account-analytics-usage.readПереглянути аналітику облікового записуManager, Writer (Лише якщо роль налаштована для всіх ресурсів)
quantum-computing.instance-usage.readПереглянути використання інстансу та залишок часуManager, Reader, Writer

Наступні кроки

Рекомендації