Despliegue y pruebe las API de envoltorio para Stablecoin
Despliegue del Paquete de API de Wrapper
Antes de desplegar el paquete de API de envoltorio, debe actualizar las variables de configuración necesarias. Algunas variables de configuración tienen valores por defecto, pero debe actualizar manualmente cualquier variable que contenga un marcador de posición como valor por defecto. Las variables de configuración se almacenan en el archivo terraform.tfvars en el archivo de API de envoltorio. Para obtener más información sobre el despliegue de API de envoltorio y sobre las variables de configuración, consulte API de envoltorio en Blockchain App Builder para Oracle Blockchain Platform. En la siguiente tabla, se muestran las variables de configuración y sus valores por defecto para el paquete de API de encapsulador de stablecoin.
| Nombre de la variable | Valor por defecto | Descripción |
|---|---|---|
compartment_ocid |
<compartment_ocid> |
OCID del compartimento en Oracle Cloud Infrastructure (OCI). |
compartment_name |
<compartment_name> |
Nombre del compartimento de OCI. |
identity_domain |
<identity_domain> |
Dominio de identidad que se va a utilizar. |
blockchain_channel |
<blockchain_channel> |
Nombre del canal de Oracle Blockchain Platform donde se despliega el código de cadena. |
blockchain_url |
<blockchain_url> |
URL de Oracle Blockchain Platform asociada al despliegue de código de cadena. |
blockchain_chaincode |
Stablecoin |
Nombre del código de cadena para el que se van a generar las API de envoltorio. |
blockchain_sync |
true |
Valor de sincronización que se debe incluir en la carga útil de las llamadas de API. |
blockchain_timeout |
6000 |
Valor de timeout que se debe incluir en la carga útil para llamadas de API. |
vcn_display_name |
Stablecoin |
Nombre mostrado de la red virtual en la nube de OCI. |
application_display_name |
Stablecoin |
Nombre mostrado de la aplicación de OCI. |
gateway_display_name |
Stablecoin |
Nombre mostrado de API Gateway. |
deployment_display_name |
Stablecoin |
Nombre mostrado del despliegue en API Gateway. |
deployment_path_prefix |
/Stablecoin |
Prefijo de ruta de acceso de despliegue en API Gateway, que especifica la ruta de acceso donde se despliegan las rutas. La variable deployment_path_prefix debe comenzar con una barra inclinada (/).
|
ocir_repo_name |
Stablecoin |
Nombre del repositorio de OCI Registry. La variable ocir_repo_name debe ser todas letras en minúscula.
|
policy_name |
Stablecoin |
Nombre de la política que permite la gestión controlada y el acceso a las API mediante permisos definidos para grupos y compartimentos de la organización |
Flujo de proceso de muestra de Stablecoin
Un flujo de proceso típico que utiliza las API de envoltorio de stablecoin sigue estos pasos básicos.- El administrador de tokens utiliza el método
initializeStablecoinTokenpara inicializar un stablecoin con un valorcurrencyNamefijo (por ejemplo,USD) y un valorconversionRate. - El administrador de tokens utiliza los métodos
createAccountyassociateTokenToAccountpara crear cuentas de token para todos los usuarios (aprobadores, minters, notarios, remitentes y receptores de varios niveles). - El administrador de token utiliza el método
createStablecoinAccountPolicyCheckpara crear políticas de cuenta. Las políticas de cuentas son obligatorias para todas las cuentas que transfieren o mantienen monedas estables. Cada política de cuenta incluye tres parámetros:KYC,AMLyrestrictionFlag.-
KYC(Conozca a su cliente) - La transferencia solo se permite cuando los valores de KYC son
truepara las cuentas de remitente y de receptor. -
AML(Antilavado de dinero) - La transferencia solo se permite cuando los valores de lista de fabricantes aprobados son
truepara las cuentas de remitente y de receptor. -
restrictionFlag - Si el indicador de restricción se define en
truepara la cuenta del remitente o del receptor, la transferencia solo se permite en el rango de bloques de política de aprobación más bajo, lo que hace que sea obligatoria una política de aprobación.
-
- El administrador de token utiliza
createApprovalPolicyCheckpara crear una política de aprobación. Las políticas de aprobación definen los umbrales de transacción, el número necesario de aprobaciones y los detalles del aprobador, y definen la secuencia para las aprobaciones de varios niveles. Una política de aprobación es obligatoria para una operación de retención. Sin una política de aprobación, los usuarios no pueden retener ni transferir tokens cuando se aplican restricciones. - El administrador de token utiliza el método
addRolepara asignar los roles de minter, quemador y notario a las cuentas adecuadas. - El minter utiliza el método
requestMintpara enviar una solicitud a mint stablecoins. - El notario utiliza el método
approveMintpara aprobar la solicitud de acuñación. - El remitente utiliza el método
holdTokenspara iniciar una transferencia. El sistema ejecuta una comprobación de política de cuentas para el remitente y el receptor. Si no se cumple el cumplimiento de KYC o AML para ninguna cuenta, no se permite la transferencia. Si el indicador de restricción se define entruepara cualquiera de las cuentas, solo se puede retener el importe del rango de umbrales de política de aprobación más bajo. A continuación, el importe de transferencia se confronta con los umbrales de la política de aprobación, y los aprobadores necesarios y sus secuencias de aprobación se derivan de la política de aprobación. - Los aprobadores de varios niveles utilizan el método
approveTransactionpara revisar y autorizar la transferencia en la secuencia exacta definida en la política de aprobación. Si la política de aprobación especifica cero aprobadores, el notario puede utilizar el métodoexecuteHoldTokensdirectamente para completar la transacción. El sistema vuelve a validar el cumplimiento de KYC y AML y el indicador de restricción durante cada llamada aexecuteHoldTokensyapproveTransaction. Si falla algún cheque, la transacción está bloqueada. - Una vez que todas las aprobaciones se han completado correctamente, el notario asignado utiliza el método
executeHoldTokenspara completar la transferencia a la cuenta del receptor. - El quemador utiliza el método
requestBurnpara enviar una solicitud para quemar monedas estables. - El notario utiliza el método
approveBurnpara aprobar la solicitud de grabación. - Los administradores y auditores de token utilizan
getStablecointAccountTransactionHistoryygetStablecoinAccountTransactionHistoryWithFilterspara realizar un seguimiento de todos los eventos de token, incluida la acuñación, la retención, los flujos de aprobación de varios niveles, las transferencias y la quema.
Colección Postman
| Variable | Descripción | Valor por defecto |
|---|---|---|
bc-instance-client-id |
ID de cliente del servicio en la nube de Oracle Blockchain Platform. | bc-instance-client-id |
bc-instance-client-secret |
El secreto de cliente del servicio en la nube de Oracle Blockchain Platform. | bc-instance-client-secret |
int-app-client-id |
ID de cliente de la aplicación confidencial de Oracle Identity Cloud Service (IDCS), que se utiliza para crear un usuario de IDCS en la API de usuario CreateIDCS.
|
int-app-client-id |
int-app-client-secret |
Secreto de cliente de la aplicación confidencial de IDCS, que se utiliza para crear un usuario de IDCS en la API de usuario CreateIDCS.
|
int-app-client-secret |
Para obtener más información, consulte Componentes de paquete de API de envoltorio en Blockchain App Builder para Oracle Blockchain Platform.