4 设置用户、访问角色和权限
使用 Oracle Blockchain Platform 设置服务后,首先要完成的任务之一是在 Oracle Identity Cloud Service (IDCS) 或身份和访问管理 (Identity and Access Management,IAM) 身份域中添加用户账户,以供您希望使用该服务的所有人使用,并在服务中为其分配适当的权限。
如果您是现有客户或区域尚不支持 IAM 身份域的新客户,您可以通过 Oracle Blockchain Platform 账户使用 IDCS。使用 IDCS 添加用户和组,然后为其分配角色以控制 Oracle Blockchain Platform 的使用。请参阅管理 Oracle Identity Cloud Service 用户和管理 Oracle Identity Cloud Service 组
如果您是新客户,并且您的 OCI 区域已迁移到使用 IAM 身份域,则会使用您的实例创建一个默认域。使用此选项可以添加用户和组,然后分配用户和组角色以控制其对 Oracle Blockchain Platform 的使用。请参见 Managing Users 和 Managing Groups 。
使用 Oracle Identity Cloud Service 进行验证
Oracle Blockchain Platform 使用 Oracle Identity Cloud Service 进行身份管理和验证。
Oracle Identity Cloud Service 为 Oracle Cloud 管理员提供了一个集中式安全平台来管理用户与应用程序之间的关系,包括与 Oracle Blockchain Platform 等其他 Oracle Cloud 服务的关系。通过 Oracle Identity Cloud Service ,您可以创建定制密码策略和电子邮件通知,为新用户注册,为应用程序分配用户和组,以及运行安全报告。请参阅《管理 Oracle Identity Cloud Service 》中的以下主题:
您账户中的每个 Oracle Cloud 服务实例都与一个 Oracle Identity Cloud Service 安全应用程序关联。每个安全应用程序定义一个或多个应用程序角色。将用户和组分配给这些应用程序角色,以便向他们授予对服务的管理访问权限。请参阅《管理 Oracle Identity Cloud Service 》中的以下主题:
连接到 Oracle Cloud Infrastructure 控制台中的 Oracle Identity Cloud Service
Oracle Blockchain Platform 租户自动与 Oracle Identity Cloud Service 联合,并配置为在 Oracle Cloud Infrastructure 中预配联合用户。
如在 Oracle Cloud Infrastructure 控制台中管理 Oracle Identity Cloud Service 用户和组中所述,通过 Oracle Identity Cloud Service 管理用户和组。
注意:
在早期版本的 Oracle Identity Cloud Service 中,区块链平台应用程序位于应用程序下的导航抽屉中。Oracle Identity Cloud Service 已与 Oracle Cloud Infrastructure 集成,因此不再具有单独的 URL。现在,您可以在 Oracle Cloud Services 下的 Identity & Security (身份和安全)和 Domains(域)下的导航抽屉中找到区块链平台应用程序。- 在 Oracle Cloud Infrastructure 中,转至身份和安全,然后选择域。创建必需的用户。
- 创建一个或多个组,并根据需要将用户分配给相应的组。
- 定义控制访问所需的策略。
- 向 Oracle Cloud Infrastructure 中的用户组授予访问特定区间和 Oracle Blockchain Platform 实例的相应权限。
使用身份和访问管理身份域进行验证
如果您的实例使用身份域进行身份管理,则可以使用 Oracle Cloud Infrastructure 控制台为您希望使用 Oracle Blockchain Platform 的每个人设置和管理用户账户。设置用户和组后,可以为其分配合适的权限(也称为应用程序角色)
要确定您的云账户是否提供身份域,请在 Oracle Cloud Infrastructure 控制台中导航到身份与安全。在身份下,查找域。
要访问使用身份域进行验证的 Oracle Blockchain Platform 实例,Oracle Blockchain Platform 用户必须首先具有有效的域身份证明。身份域管理员管理域中用户的预配并执行添加用户的任务。
- 打开导航菜单,然后单击 Identity & Security 。在身份下,单击域。
- 选择要使用的身份域,然后单击用户。
- 单击创建用户。输入用户信息。
为 Oracle Blockchain Platform Network 和 REST API 分配角色
此概览介绍与 Oracle Blockchain Platform 网络用户、管理员和控制台 REST API 用户相关的角色。使用或管理 Oracle Blockchain Platform 的任何人都必须在 Oracle Identity Cloud Service 或 Identity and Access Management 中添加,并被授予正确的用户角色。
如何将角色与用户关联
如果您使用的是 IDCS,则需要为 IDCS 中的每个用户添加适当的角色。有关如何在 IDCS 中添加或管理用户角色的信息,请参阅管理用户的 Oracle Identity Cloud Service 角色。
- 打开导航菜单并单击身份和安全,然后单击域。
- 选择要使用的身份域,然后选择 Oracle Cloud Services ,然后从列表中选择服务。
- 在资源下,选择应用程序角色。
- 选择要分配给用户的角色,单击角色右侧的“更多”图标,然后选择分配用户。
使用或管理网络或 REST API 所需的角色
下面是可用于 Oracle Blockchain Platform 的角色。
用户角色 | 是否自动授予实例创建者? | 说明 |
---|---|---|
ADMIN | 是 |
此角色是 Oracle Blockchain Platform 云应用程序的整体管理员。 有关此用户角色可用的控制台函数的完整列表,请参见 Access Control List for Console Function by User Roles 中的表。 要使用管理区块链网络 REST API,您必须将此角色与您的用户 ID 关联。 请注意,管理区块链平台(控制层)REST API 使用 OCI 的身份验证机制,如下所述:Oracle Cloud Infrastructure 文档:REST API 。此表中介绍的 ADMIN 角色仅适用于网络管理、应用程序操作和统计信息 REST API 调用。 |
用户 | 有关此用户角色可用的控制台函数的完整列表,请参见 Access Control List for Console Function by User Roles 中的表。 | |
CA_USER | 是 | 此用户角色分配给 Oracle Blockchain Platform 参与者,以授予用户对调用证书颁发机构 API 的访问权限。 |
REST_CLIENT | 是 |
授予用户调用 REST 代理节点上具有相同编号的所有可用 REST 代理端点的访问权限。 请注意,管理区块链平台(控制层)REST API 使用 OCI 的身份验证机制,如下所述:Oracle Cloud Infrastructure 文档:REST API 。此表中介绍的 REST_CLIENT 角色仅适用于网络管理、应用程序操作和统计信息 REST API 调用。 |
按用户角色列出的控制台功能的访问控制列表
下表列出了 ADMIN 和 USER 角色可用的控制台功能。
功能 | ADMIN | USER |
---|---|---|
仪表板 |
是 |
是 |
网络:列出组织 |
是 |
是 |
网络:添加组织 |
是 |
无 |
网络:订购服务设置 |
是 |
无 |
网络:导出证书 |
是 |
无 |
网络:导出排序器设置 |
是 |
无 |
网络:添加 OSN |
是 |
无 |
网络:导出网络配置块 |
是 |
无 |
Node: list |
是 |
是 |
节点:启动/停止/重新启动 |
是 |
无 |
节点:添加/删除 |
是 |
无 |
节点:查看属性 |
是 |
是 |
节点:编辑属性 |
是 |
无 |
节点:查看度量 |
是 |
是 |
节点:查看日志 |
是 |
是 |
节点:导出/导入对等节点 |
是 |
无 |
节点:显示 VM 位置 |
是 |
是 |
对等节点:列出通道 |
是 |
是 |
对等节点:联接通道 |
是 |
无 |
对等节点:列表链代码 |
是 |
是 |
排序器:导出 OSN 设置 |
是 |
无 |
排序器:导入网络配置块 |
是 |
无 |
通道:列表 |
是 |
是 |
通道:创建 |
是 |
无 |
渠道:将组织添加到渠道 |
是 |
无 |
渠道:更新订购服务设置 |
是 |
无 |
渠道:查看/查询分类帐 |
是 |
是 |
通道:列出实例化的链代码 |
是 |
是 |
渠道:列出联接的对等节点 |
是 |
是 |
通道:设置锚点对等点 |
是 |
无 |
渠道:升级链代码 |
是 |
无 |
通道:管理 OSN 管理 |
是 |
无 |
Channel(通道):将排序者加入到通道 |
是 |
无 |
通道:从通道中删除排序者 |
是 |
无 |
链码:列表 |
是 |
是 |
Chaincode:安装 |
是 |
无 |
链代码:实例化 |
是 |
无 |
链代码示例:安装 |
是 |
无 |
链代码示例:实例化 |
是 |
无 |
链代码示例:调用 |
是 |
是 |
CRL |
是 |
无 |
使用权限和策略管理 Oracle Blockchain Platform
Oracle Cloud Infrastructure 中的每项服务都与身份和访问管理 (Identity and Access Management,IAM) 集成,以便对所有接口(控制台、SDK 或 CLI 以及 REST API)进行验证和授权。您使用 IAM 授权策略来控制对租户中资源的访问权限。例如,您可以创建策略以授权用户创建和管理 Oracle Blockchain Platform 实例。
可以使用 Oracle Cloud Infrastructure 控制台创建策略。有关 IAM 策略的详细信息,请参阅 Oracle Cloud Infrastructure 文档中的 Oracle Cloud Infrastructure Identity and Access Management 概览。有关编写策略的详细信息,请参见 Policy Syntax 和 Policy Reference 。
Oracle Blockchain Platform 资源类型
资源种类 | 权限 | 说明 |
---|---|---|
区块链平台 |
|
一个或多个 Oracle Blockchain Platform 实例。 |
区块链平台工作请求 |
|
Oracle Blockchain Platform 的单一工作请求。
在 Oracle Blockchain Platform 实例上执行的每个操作都会创建一个工作请求。例如,创建、启动、停止等操作。 |
操作到权限映射
下表列出了特定于 Oracle Blockchain Platform 的 IAM 操作。您可以编写包含这些操作的 IAM 策略,也可以编写使用封装这些操作的已定义动词的策略。
操作 ID | 使用操作所需的权限 | API 操作 |
---|---|---|
createBlockchainPlatform | BLOCKCHAIN_PLATFORM_CREATE | CreateBlockchainPlatform |
deleteBlockchainPlatform | BLOCKCHAIN_PLATFORM_DELETE | DeleteBlockchainPlatform |
getAllPlatformsInCompartment | BLOCKCHAIN_PLATFORM_INSPECT | GetBlockchainPlatforms |
getBlockchainPlatformInformation | BLOCKCHAIN_PLATFORM_READ | GetBlockchainPlatformInformation |
getWorkRequest | BLOCKCHAIN_PLATFORM_WORK_REQUEST_READ | GetWorkRequest |
getWorkRequestErrors | BLOCKCHAIN_PLATFORM_WORK_REQUEST_READ | ListWorkRequestErrors |
getWorkRequestLogs | BLOCKCHAIN_PLATFORM_WORK_REQUEST_READ | ListWorkRequestLogs |
listWorkRequests | BLOCKCHAIN_PLATFORM_WORK_REQUEST_INSPECT | ListWorkRequests |
restartBlockchainPlatform | BLOCKCHAIN_PLATFORM_UPDATE | RestartBlockchainPlatform |
startBlockchainPlatform | BLOCKCHAIN_PLATFORM_UPDATE | StartBlockchainPlatform |
stopBlockchainPlatform | BLOCKCHAIN_PLATFORM_UPDATE | StopBlockchainPlatform |
updateBlockchainPlatform | BLOCKCHAIN_PLATFORM_UPDATE | UpdateBlockchainPlatform |
有关动词和资源类型组合的详细信息
Oracle Cloud Infrastructure 提供了一组标准动词来定义各种 Oracle Cloud Infrastructure 资源的权限( Inspect 、 Read 、 Use 、 Manage )。这些表列出了与每个动词关联的 Oracle Blockchain Platform 权限。从 Inspect 到 Read 、再到 Use 、再到 Manage ,访问级别是累计的。
INSPECT
资源 - 类型 | INSPECT 权限 |
---|---|
|
|
|
|
READ
资源 - 类型 | 读权限 |
---|---|
|
|
|
|
USE
资源 - 类型 | USE 权限 |
---|---|
|
|
|
|
管理
资源 - 类型 | 管理权限 |
---|---|
|
|
|
|
特定于操作的属性
这些变量的值由 Oracle Blockchain Platform 提供。此外,还支持其他通用变量。请参见 General Variables for All Requests 。
对于给定的资源类型,所有操作(获取、列出、删除等)应具有相同的属性集。一个例外是 create
操作,其中您还没有该对象的 ID,因此您不能具有 create
的 target.RESOURCE-KIND.id
属性。
资源种类 | 名称 | 类型 | 源 |
---|---|---|---|
区块链平台 | |||
区块链平台工作请求 |