Déployer et tester des API de wrapper pour Stablecoin
Déploiement du package d'API Wrapper
Pour pouvoir déployer le package d'API wrapper, vous devez mettre à jour les variables de configuration requises. Certaines variables de configuration ont des valeurs par défaut, mais vous devez mettre à jour manuellement toute variable contenant un espace réservé comme valeur par défaut. Les variables de configuration sont stockées dans le fichier terraform.tfvars de l'archive d'API de wrapper. Pour plus d'informations sur le déploiement des API de wrapper et sur les variables de configuration, reportez-vous à API de wrapper dans Blockchain App Builder for Oracle Blockchain Platform. Le tableau suivant répertorie les variables de configuration et leurs valeurs par défaut pour le package API wrapper stablecoin.
| Nom de variable | Valeur par défaut | Description |
|---|---|---|
compartment_ocid |
<compartment_ocid> |
OCID du compartiment dans Oracle Cloud Infrastructure (OCI). |
compartment_name |
<compartment_name> |
Nom du compartiment OCI. |
identity_domain |
<identity_domain> |
Domaine d'identité à utiliser. |
blockchain_channel |
<blockchain_channel> |
Nom du canal Oracle Blockchain Platform sur lequel le code chaîne est déployé. |
blockchain_url |
<blockchain_url> |
URL Oracle Blockchain Platform associée au déploiement de code chaîne. |
blockchain_chaincode |
Stablecoin |
Nom du code chaîne pour lequel générer des API de wrapper. |
blockchain_sync |
true |
Valeur de synchronisation à inclure dans la charge utile pour les appels d'API. |
blockchain_timeout |
6000 |
Valeur de délai d'expiration à inclure dans la charge utile pour les appels d'API. |
vcn_display_name |
Stablecoin |
Nom d'affichage du réseau cloud virtuel OCI. |
application_display_name |
Stablecoin |
Nom d'affichage de l'application OCI. |
gateway_display_name |
Stablecoin |
Nom d'affichage de API Gateway. |
deployment_display_name |
Stablecoin |
Nom d'affichage du déploiement dans API Gateway. |
deployment_path_prefix |
/Stablecoin |
Préfixe de chemin de déploiement dans API Gateway, qui indique le chemin où les routages sont déployés. La variable deployment_path_prefix doit commencer par une barre oblique (/).
|
ocir_repo_name |
Stablecoin |
Nom du référentiel OCI Registry. La variable ocir_repo_name doit être composée de lettres minuscules.
|
policy_name |
Stablecoin |
Nom de la stratégie qui permet une gestion contrôlée et un accès aux API via des droits d'accès définis pour les groupes et les compartiments dans l'organisation |
Exemple de processus Stablecoin
Un flux de processus typique utilisant les API de wrapper stablecoin suit ces étapes de base.- L'administrateur de jeton utilise la méthode
initializeStablecoinTokenpour initialiser un stablecoin avec une valeurcurrencyNamefixe (par exemple,USD) et une valeurconversionRate. - L'administrateur de jetons utilise les méthodes
createAccountetassociateTokenToAccountpour créer des comptes de jetons pour tous les utilisateurs (approbateurs multiniveaux, mineurs, notaires, expéditeurs et récepteurs). - L'administrateur de jetons utilise la méthode
createStablecoinAccountPolicyCheckpour créer des stratégies de compte. Les stratégies de compte sont obligatoires pour tous les comptes qui transfèrent ou détiennent des pièces stables. Chaque stratégie de compte inclut trois paramètres :KYC,AMLetrestrictionFlag.-
KYC(Connaître son client) - Le transfert n'est autorisé que lorsque les valeurs KYC sont
truepour les comptes émetteur et récepteur. -
AML(Anti-blanchiment d'argent) - Le transfert n'est autorisé que lorsque les valeurs AML sont
truepour les comptes émetteur et récepteur. -
restrictionFlag - Si l'indicateur de restriction est défini sur
truepour le compte expéditeur ou destinataire, le transfert n'est autorisé que dans la plage de catégories de stratégie d'approbation la plus basse, ce qui rend une stratégie d'approbation obligatoire.
-
- L'administrateur de jeton utilise
createApprovalPolicyCheckpour créer une stratégie d'approbation. Les stratégies d'approbation définissent les seuils de transaction, le nombre requis d'approbations et les détails des approbateurs, et définissent la séquence pour les approbations à plusieurs niveaux. Une stratégie d'approbation est obligatoire pour une opération de blocage. Sans stratégie d'approbation, les utilisateurs ne peuvent pas détenir ou transférer de jetons lorsque des restrictions s'appliquent. - L'administrateur de jetons utilise la méthode
addRolepour affecter les rôles mineur, brûleur et notaire aux comptes appropriés. - Le minter utilise la méthode
requestMintpour soumettre une demande à ment stablecoins. - Le notaire utilise la méthode
approveMintpour approuver la demande d'extraction. - L'expéditeur utilise la méthode
holdTokenspour lancer un transfert. Le système exécute une vérification de stratégie de compte pour l'expéditeur et le destinataire. Si la conformité KYC ou AML n'est pas satisfaite pour l'un ou l'autre compte, le transfert n'est pas autorisé. Si l'indicateur de restriction est défini surtruepour l'un ou l'autre des comptes, seul le montant de la plage de seuils de stratégie d'approbation la plus basse peut être bloqué. Le montant du transfert est ensuite mis en correspondance avec les seuils de stratégie d'approbation, et les approbateurs requis et leurs séquences d'approbation sont dérivés de la stratégie d'approbation. - Les approbateurs multiniveau utilisent la méthode
approveTransactionpour vérifier et autoriser le transfert dans la séquence exacte définie dans la stratégie d'approbation. Si la stratégie d'approbation spécifie zéro approbateur, le notaire peut utiliser la méthodeexecuteHoldTokensdirectement pour terminer la transaction. Le système valide de nouveau la conformité KYC et AML et l'indicateur de restriction lors de chaque appel versexecuteHoldTokensetapproveTransaction. Si une vérification échoue, la transaction est bloquée. - Une fois toutes les approbations terminées, le notaire affecté utilise la méthode
executeHoldTokenspour terminer le transfert vers le compte du destinataire. - Le brûleur utilise la méthode
requestBurnpour soumettre une demande de gravure de stablecoins. - Le notaire utilise la méthode
approveBurnpour approuver la demande de gravure. - Les administrateurs et les auditeurs de jetons utilisent
getStablecointAccountTransactionHistoryetgetStablecoinAccountTransactionHistoryWithFilterspour suivre tous les événements de jeton, y compris le minage, le blocage, les flux d'approbation multiniveau, les transferts et la gravure.
Collection Postman
| Variable | Description | Valeur par défaut |
|---|---|---|
bc-instance-client-id |
ID client du service cloud Oracle Blockchain Platform. | bc-instance-client-id |
bc-instance-client-secret |
Clé secrète du client du service cloud Oracle Blockchain Platform. | bc-instance-client-secret |
int-app-client-id |
ID client de l'application confidentielle Oracle Identity Cloud Service (IDCS), qui permet de créer un utilisateur IDCS dans l'API utilisateur CreateIDCS.
|
int-app-client-id |
int-app-client-secret |
Clé secrète client de l'application confidentielle IDCS, utilisée pour créer un utilisateur IDCS dans l'API utilisateur CreateIDCS.
|
int-app-client-secret |
Pour plus d'informations, reportez-vous à Composants de package d'API de wrapper dans Blockchain App Builder for Oracle Blockchain Platform.