部署和测试 Stablecoin 的包装 API
部署 Wrapper API 程序包
必须先更新所需的配置变量,然后才能部署包装 API 软件包。某些配置变量具有默认值,但必须手动更新包含占位符作为其默认值的任何变量。配置变量存储在包装器 API 档案中的 terraform.tfvars 文件中。有关部署包装 API 和配置变量的更多信息,请参见 Blockchain App Builder for Oracle Blockchain Platform 中的 Wrapper API 。下表列出了稳定币包装 API 包的配置变量及其默认值。
| 变量名称 | 默认值 | 说明 |
|---|---|---|
compartment_ocid |
<compartment_ocid> |
Oracle Cloud Infrastructure (OCI) 中区间的 OCID。 |
compartment_name |
<compartment_name> |
OCI 区间的名称。 |
identity_domain |
<identity_domain> |
要使用的身份域。 |
blockchain_channel |
<blockchain_channel> |
部署链代码的 Oracle Blockchain Platform 通道的名称。 |
blockchain_url |
<blockchain_url> |
与链代码部署关联的 Oracle Blockchain Platform URL。 |
blockchain_chaincode |
Stablecoin |
要为其生成包装 API 的链代码的名称。 |
blockchain_sync |
true |
要包括在 API 调用有效负载中的同步值。 |
blockchain_timeout |
6000 |
要包括在 API 调用有效负载中的超时值。 |
vcn_display_name |
Stablecoin |
OCI 虚拟云网络的显示名称。 |
application_display_name |
Stablecoin |
OCI 应用程序的显示名称。 |
gateway_display_name |
Stablecoin |
API 网关的显示名称。 |
deployment_display_name |
Stablecoin |
API 网关中部署的显示名称。 |
deployment_path_prefix |
/Stablecoin |
API 网关中的部署路径前缀,用于指定部署路由的路径。deployment_path_prefix 变量必须以斜杠 (/) 开头。
|
ocir_repo_name |
Stablecoin |
OCI 注册表资料档案库名称。ocir_repo_name 变量必须全部为小写字母。
|
policy_name |
Stablecoin |
该策略的名称,通过为组织中的组和区间定义的权限来控制对 API 的管理和访问 |
Stablecoin 样品处理流程
使用稳定币包装 API 的典型流程遵循这些基本步骤。- 令牌管理员使用
initializeStablecoinToken方法初始化具有固定currencyName值(例如USD)和conversionRate值的稳定币。 - 令牌管理员使用
createAccount和associateTokenToAccount方法为所有用户(多级审批者、矿工、公证人、发送者和接收者)创建令牌账户。 - 令牌管理员使用
createStablecoinAccountPolicyCheck方法创建帐户策略。账户策略对于转移或持有稳定币的所有账户都是必需的。每个帐户策略包括三个参数:KYC、AML和restrictionFlag。 - 令牌管理员使用
createApprovalPolicyCheck创建审批策略。审批策略定义事务处理阈值、所需的审批数和审批人详细信息,并设置多级别审批的顺序。审批策略对于暂挂操作是必需的。如果没有审批策略,用户将无法在应用限制时持有或转移令牌。 - 令牌管理员使用
addRole方法将 minter、Burner 和 Notary 角色分配给相应的帐户。 - minter 使用
requestMint方法提交对 mint 稳定币的请求。 - 公证人使用
approveMint方法批准铸造请求。 - 发送者使用
holdTokens方法启动传输。系统会为发送者和接收者运行帐户策略检查。如果未满足任一账户的 KYC 或 AML 合规性,则不允许转移。如果将任一账户的限制标志设置为true,则只能暂挂处于最低审批策略阈值范围内的金额。然后,转移金额与审批策略阈值进行匹配,所需的审批人及其审批顺序源自审批策略。 - 多级审批人使用
approveTransaction方法按审批策略中定义的确切顺序检查和授权调动。如果审批策略指定了零审批者,公证人可以直接使用executeHoldTokens方法来完成事务处理。每次调用executeHoldTokens和approveTransaction时,系统都会重新验证 KYC 和 AML 合规性以及限制标志。如果任何检查失败,将阻止事务处理。 - 在成功完成所有审批之后,分配的公证人使用
executeHoldTokens方法完成传送至接收人的帐户。 - 刻录器使用
requestBurn方法提交烧录稳定币的请求。 - 公证人使用
approveBurn方法批准刻录请求。 - 令牌管理员和审计者使用
getStablecointAccountTransactionHistory和getStablecoinAccountTransactionHistoryWithFilters跟踪所有令牌事件,包括铸造、持有、多级别审批流、传输和刻录。
邮递员
在 stablecoin 包装 API 包中的 Postman 集合包括支持 stablecoin 链码的其他属性和方法。下表显示了特定于稳定币包的 Postman 集合变量。
| 变量 | 说明 | 默认值 |
|---|---|---|
bc-instance-client-id |
Oracle Blockchain Platform 云服务的客户端 ID。 | bc- 实例 - 客户机 - 标识 |
bc-instance-client-secret |
Oracle Blockchain Platform 云服务的客户端密钥。 | bc 实例 - 客户端 - 密钥 |
int-app-client-id |
Oracle Identity Cloud Service (IDCS) 机密应用程序的客户端 ID,用于在 CreateIDCS 用户 API 中创建 IDCS 用户。
|
int-app-client-id |
int-app-client-secret |
IDCS 机密应用程序的客户端密钥,用于在 CreateIDCS 用户 API 中创建 IDCS 用户。
|
内部应用程序客户端密钥 |
有关详细信息,请参阅 Blockchain App Builder for Oracle Blockchain Platform 中的 Wrapper API Package Components 。