為下列項目管理 IAM 存取權限 InstructLab
您帳戶中使用者存取 Red Hat AI InstructLab 專案的權限由 IBM Cloud® Identity and Access Management (IAM) 控制。 在您的帳戶中存取 Red Hat AI InstructLab 服務的每個使用者都必須指定具有 IAM 角色的存取政策。 檢閱下列角色、動作等,以協助確定分配 Red Hat AI InstructLab 存取權限的最佳方式。
您在帳戶中為使用者指定的存取政策決定了使用者在您選擇的服務或特定專案範圍內可以執行的動作。 允許的動作由 Red Hat AI InstructLab 自訂和定義為允許在服務上執行的作業。 每個動作都對應到您可以指派給使用者的 IAM 平台或服務角色。
確保您也擁有要使用的資源群組的檢視者角色。
IAM 存取政策允許不同層級的存取。 部分選項包括以下內容:
- 賦予 Reader 或 Writer 對特定專案的存取權。
- 允許讀者或寫者存取可能有許多專案的特定資源群組。
- 賦予閱讀者或撰寫者整個帳戶的存取權,其中可能有許多專案的資源群組。
- 賦予 Viewer 在資源群組和帳戶層級中存取 InstructLab 專案的權限。
- 賦予在資源群組和帳戶層級中建立 InstructLab 專案的建立權限。
如果特定角色及其動作不符合您想要解決的使用個案,您可以 建立自訂角色,並選擇要包含的動作。
檢視下列表格,這些表格概述了當您使用 Red Hat AI InstructLab 服務時,每個角色允許執行的任務類型。 平台管理角色可讓使用者在平台層級對服務資源執行任務,例如指派使用者對服務的存取權、建立或刪除專案,以及將專案綁定至應用程式。 服務存取角色可讓使用者存取 Red Hat AI InstructLab,並能夠呼叫 Red Hat AI InstructLab 的 API。
這是平台角色允許使用者做什麼的高層次檢視。 使用淺白的語言說明可以完成何種任務,或使用者在指派每個角色時可以預期執行的常見工作。
IAM 角色和動作
| 平台角色 | 說明 |
|---|---|
| 檢視者 | 身為檢視者,您可以檢視專案,但不能修改專案。 |
| 操作員 | 身為操作員,您可以執行設定和操作專案所需的平台動作,例如檢視服務的儀表板。 |
| 編輯者 | 身為編輯者,您可以可能所有平台動作,但管理帳戶及指派存取原則除外。 |
| 管理者 | 身為管理者,您可以根據指派此角色的資源執行所有平台動作,包括指派存取原則給其他使用者。 |
| 服務組態讀卡機 | 讀取服務組態以進行治理管理的能力。 |
| 主要經理 | 作為金鑰管理員,服務可以執行管理資源金鑰所需的平台動作,例如建立新的資源金鑰。 |
| 服務角色 | 說明 |
|---|---|
| 讀者 | 身為讀取者,您可以在服務內執行唯讀動作,例如檢視服務特定的資源。 |
| 撰寫者 | 身為撰寫者,您具有讀者角色之外的許可權,包括建立及編輯服務特定的資源。 |
| 管理員 | 身為管理員,您具有撰寫者角色之外的許可權,以完成服務所定義的特許動作。 此外,您可以建立及編輯服務特定的資源。 |
| 行動與事件 | 說明 | 角色 |
|---|---|---|
instructlab.dashboard.view |
檢視 InstructLab 面板。 | 操作員、管理員、編輯 |
instructlab.taxonomy.read |
閱讀分類系統的詳細資訊。 | 讀者、撰寫者、管理員 |
instructlab.taxonomy.create |
建立分類系統 | 作者、管理員 |
instructlab.taxonomy.list |
列出分類系統。 | 讀者、撰寫者、管理員 |
instructlab.taxonomy.delete |
刪除分類系統。 | 作者、管理員 |
instructlab.sdgdata.read |
讀取資料產生運行的詳細資訊。 | 讀者、撰寫者、管理員 |
instructlab.sdgdata.list |
清單資料產生運行。 | 讀者、撰寫者、管理員 |
instructlab.sdgdata.create |
建立資料產生運行。 | 作者、管理員 |
instructlab.sdgdata.delete |
刪除資料產生運行。 | 作者、管理員 |
instructlab.sdgdata.stop |
停止資料產生執行。 | 作者、管理員 |
instructlab.sdgdata.stop |
停止資料產生執行。 | 作者、管理員 |
instructlab.model.read |
閱讀模型訓練運行的詳細資訊。 | 讀者、撰寫者、管理員 |
instructlab.model.list |
列出模型訓練運行。 | 讀者、撰寫者、管理員 |
instructlab.model.create |
建立模型訓練運行。 | 作者、管理員 |
instructlab.model.delete |
刪除模型訓練運行。 | 作者、管理員 |
instructlab.model.stop |
停止模型訓練執行。 | 作者、管理員 |
賦予 InstuctLab 建立和更新 Object Storage 工件的權限
給予 InstructLab Object Storage 服務的 Writer 存取角色。 登入的使用者也必須擁有相同的權限。
-
為 InstructLab 和 Object Storage 建立授權政策。
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage如果您已經有 Object Storage 資源要使用,您可以將授權範圍僅限於這些資源。
ibmcloud iam authorization-policy-create Writer --source-service-name instructlab --target-service-name cloud-object-storage --target-service-instance-id <cloud-object-storage-instance-id> --target-resource <cloud-object-storage-bucket> --target-resource-type bucket -
確認授權政策已建立。
ibmcloud iam authorization-policies當授權範圍未涵蓋特定 Object Storage 桶時的結果:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: All instances Roles: Writer授權範圍涵蓋特定 Object Storage 桶時的結果:
Getting authorization policies under account abc1234 as user... OK ID: <id> Source service name: instructlab Source service instance: All instances Target service name: cloud-object-storage Target service instance: bucket Roles: Writer -
選項如果您使用私人儲存庫,請為 InstructLab 和 Secrets Manager
ibmcloud iam authorization-policy-create Reader --source-service-name instructlab --target-service-name secrets-manager -
如有必要,請將
Writer權限給登入的使用者。 包含上一步中的 Object Storage 服務實體 ID。ibmcloud iam user-policy-create <user> --roles Writer --service-instance <cloud-object-storage-instance-id>
指派使用者存取您的資源
您可以控制帳戶中哪些使用者(或使用者群組)存取您的 InstructLab 資源。 按照以下步驟在主控台中指定存取權限。
有關如何指派存取權限的詳細資訊,例如使用 CLI 的步驟,或您可以設定 InstructLab 或 Object Storage 資料桶存取範圍的不同方式,請參閱 IBM Cloud 上的管理 Red Hat AI InstructLab 的 IAM 存取權限。
分配存取權限有兩種常見方式:
- 每個使用者的存取政策。
- 您可以從主控台中的管理 > 存取 (IAM) > 使用者頁面,管理每個使用者的存取政策。 有關指派 IAM 存取權的步驟,請參閱 管理主控台中的資源存取權。
- 存取群組。
- 存取群組可用於簡化存取管理,只需將存取權指定給群組一次,然後您就可以根據需要從群組中新增或移除使用者,以控制他們的存取權。 您可以從控制台中的管理 > 存取 (IAM) > 存取群組頁面管理存取群組及其存取權限。 如需詳細資訊,請參閱 在主控台中為群組指定存取權限。
{{../account/iam-mng-access.md#access-resources-console}}
{{../account/iam-mng-access.md#access-to-resources-console}}
{{../account/iam-mng-access.md#access-to-resource-group}}
使用 CLI 指定 InstructLab 的存取權限
有關指派、移除和檢閱存取權限的逐步指示,請參閱 使用 CLI 指派資源存取權限。 以下範例顯示為 instructlab 指定 Writer 角色的指令:
服務名稱請使用 instructlab。 若要尋找角色 ID,請執行 ibmcloud iam roles 指令。 此外,角色名稱若超過一個字,請使用引號。 例如 "Service Configuration Reader"。
範例指令賦予使用者帳號中特定 InstructLab 專案的 Viewer 角色。
ibmcloud iam user-policy-create name@example.com --roles Viewer --service-name instructlab --attributes "projectId=1b111111-1ef1-11f1-1111-111bae11111a"
範例指令,賦予使用者帳號中特定 InstructLab 專案的 Key Manager 角色。
ibmcloud iam user-policy-create name@email.com --roles "Key Manager" --service-name instructlab
範例指令賦予使用者該帳號中所有 InstructLab 專案的 Writer 角色。
ibmcloud iam user-policy-create USER@EXAMPLE.COM --service-name instructlab --roles Writer
範例指令為帳號中 InstructLab 服務的所有實體指定管理員角色。
ibmcloud iam user-policy-create name@example.com --roles Administrator --service-name instructlab
將 Viewer 角色指定給帳戶中所有資源群組的範例指令。
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
將 Viewer 角色指定給特定資源群組中所有使用者的範例指令。
ibmcloud iam user-policy-create name@example.com --roles Viewer --resource-type resource-group
取得資源群組 Administrator 角色的範例指令。
ibmcloud iam service-policy-create test --roles Administrator --resource-group-name sample-resource-group
使用 API 指派使用者存取 InstructLab
有關指派、移除和檢閱存取權限的逐步說明,請參閱 使用 API 指派資源存取權限 或 建立政策 API 說明文件。 下表中的角色雲端資源名稱 (CRN) 用於使用 API 指定存取權。
使用 instructlab 作為服務名稱,並參閱角色 CRN 值表,以確保您使用的角色值正確。 檢視下列角色 CRN 清單。
| 角色 | CRN |
|---|---|
| 讀者 | crn:v1:bluemix:public:iam::::serviceRole:Reader |
| 撰寫者 | crn:v1:bluemix:public:iam::::serviceRole:Writer |
| 管理員 | crn:v1:bluemix:public:iam::::serviceRole:Manager |
| 檢視者 | crn:v1:bluemix:public:iam::::role:Viewer |
| 操作員 | crn:v1:bluemix:public:iam::::role:Operator |
| 編輯者 | crn:v1:bluemix:public:iam::::role:Editor |
| 管理者 | crn:v1:bluemix:public:iam::::role:Administrator |
| 服務組態讀卡機 | crn:v1:bluemix:public:iam::::role:ConfigReader |
| 主要經理 | crn:v1:bluemix:public:resource-controller::::role:KeyManager |
以下範例為 instructlab 指定 Writer 角色。
curl -X POST 'https://iam.cloud.ibm.com/v1/policies' -H 'Authorization: Bearer $TOKEN' -H 'Content-Type: application/json' -d '{
"type": "access",
"description": "Writer role for InstructLab",
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-123453user"
}
]
}'
],
"roles":[
{
"role_id": "crn:v1:bluemix:public:iam::::serviceRole:Writer"
}
],
"resources":[
{
"attributes": [
{
"name": "accountId",
"value": "$ACCOUNT_ID"
},
{
"name": "serviceName",
"value": "instructlab"
}
]
}
]
}
{{../account/iam-mng-access.md#access-resources-api}}
{{../account/iam-mng-access.md#access-resourcegroups-api}}