Wrapper-APIs für Stablecoin bereitstellen und testen
Wrapper-API-Package bereitstellen
Bevor Sie das Wrapper-API-Package bereitstellen können, müssen Sie die erforderlichen Konfigurationsvariablen aktualisieren. Einige Konfigurationsvariablen haben Standardwerte. Sie müssen jedoch jede Variable, die einen Platzhalter als Standardwert enthält, manuell aktualisieren. Konfigurationsvariablen werden in der Datei terraform.tfvars im Wrapper-API-Archiv gespeichert. Weitere Informationen zum Deployment von Wrapper-APIs und zu Konfigurationsvariablen finden Sie unter Wrapper-APIs in Blockchain App Builder for Oracle Blockchain Platform. In der folgenden Tabelle sind die Konfigurationsvariablen und deren Standardwerte für das API-Package des Stablecoin-Wrappers aufgeführt.
| Variablenname | Standardwert | Beschreibung |
|---|---|---|
compartment_ocid |
<compartment_ocid> |
Die OCID des Compartments in Oracle Cloud Infrastructure (OCI). |
compartment_name |
<compartment_name> |
Der Name des OCI Compartments. |
identity_domain |
<identity_domain> |
Die zu verwendende Identitätsdomain. |
blockchain_channel |
<blockchain_channel> |
Der Name des Oracle Blockchain Platform-Kanals, in dem der Chaincode bereitgestellt wird. |
blockchain_url |
<blockchain_url> |
Die Oracle Blockchain Platform-URL, die mit dem Chaincode-Deployment verknüpft ist. |
blockchain_chaincode |
Stablecoin |
Der Name des Chaincodes, für den Wrapper-APIs generiert werden sollen. |
blockchain_sync |
true |
Der Synchronisierungswert, der in die Payload für API-Aufrufe aufgenommen werden soll. |
blockchain_timeout |
6000 |
Der Timeoutwert, der in die Payload für API-Aufrufe aufgenommen werden soll. |
vcn_display_name |
Stablecoin |
Der Anzeigename des virtuellen OCI-Cloud-Netzwerks. |
application_display_name |
Stablecoin |
Der Anzeigename der OCI-Anwendung. |
gateway_display_name |
Stablecoin |
Der Anzeigename des API-Gateways. |
deployment_display_name |
Stablecoin |
Der Anzeigename des Deployments im API-Gateway. |
deployment_path_prefix |
/Stablecoin |
Das Deployment-Pfadpräfix in API Gateway, das den Pfad angibt, in dem Routen bereitgestellt werden. Die Variable deployment_path_prefix muss mit einem Schrägstrich (/) beginnen.
|
ocir_repo_name |
Stablecoin |
Der Name des OCI Registry-Repositorys. Die Variable ocir_repo_name muss aus Kleinbuchstaben bestehen.
|
policy_name |
Stablecoin |
Der Name der Policy, die eine kontrollierte Verwaltung und Zugriff auf APIs über definierte Berechtigungen für Gruppen und Compartments in der Organisation ermöglicht |
Stablecoin Beispielprozessfluss
Ein typischer Prozessfluss mit den Stablecoin-Wrapper-APIs folgt diesen grundlegenden Schritten.- Der Tokenadministrator initialisiert einen Stablecoin mit einem festen
currencyName-Wert (z.B.USD) und einemconversionRate-Wert mit der MethodeinitializeStablecoinToken. - Der Tokenadministrator verwendet die Methoden
createAccountundassociateTokenToAccount, um Tokenaccounts für alle Benutzer zu erstellen (Genehmiger, Miner, Notare, Absender und Empfänger auf mehreren Ebenen). - Der Tokenadministrator erstellt Account-Policys mit der Methode
createStablecoinAccountPolicyCheck. Kontorichtlinien sind für alle Konten obligatorisch, die Stablecoins übertragen oder halten. Jede Account-Policy enthält drei Parameter:KYC,AMLundrestrictionFlag.-
KYC(Know Your Customer) - Der Transfer ist nur zulässig, wenn die KYC-Werte für Absender- und Empfängerkonten
truelauten. -
AML(Geldwäschebekämpfung) - Der Transfer ist nur zulässig, wenn die AML-Werte für Absender- und Empfängerkonten
truelauten. -
restrictionFlag - Wenn das Einschränkungskennzeichen für das Absender- oder Empfängerkonto auf
truegesetzt ist, ist die Übertragung nur im niedrigsten Zeitraum für Genehmigungs-Policy-Buckets zulässig, sodass eine Genehmigungs-Policy erforderlich ist.
-
- Der Tokenadministrator verwendet
createApprovalPolicyCheck, um eine Genehmigungs-Policy zu erstellen. Genehmigungs-Policys definieren Transaktionsschwellenwerte, die erforderliche Anzahl von Genehmigungen und Genehmigerdetails und legen die Reihenfolge für Genehmigungen mit mehreren Ebenen fest. Für einen Sperrvorgang ist eine Genehmigungs-Policy erforderlich. Ohne eine Genehmigungs-Policy können Benutzer Token nicht sperren oder übertragen, wenn Einschränkungen gelten. - Der Tokenadministrator verwendet die Methode
addRole, um den entsprechenden Accounts die Minter-, Burner- und Notarrollen zuzuweisen. - Der Miner verwendet die
requestMint-Methode, um eine Anfrage an Stablecoins zu senden. - Der Notar verwendet die Methode
approveMint, um die Minting-Anforderung zu genehmigen. - Der Absender initiiert eine Übertragung mit der Methode
holdTokens. Das System führt eine Prüfung der Kontorichtlinien für Absender und Empfänger aus. Wenn die KYC- oder AML-Compliance für beide Konten nicht erfüllt wird, ist die Übertragung nicht zulässig. Wenn das Einschränkungskennzeichen für eines der Konten auftruegesetzt ist, kann nur der Betrag im niedrigsten Schwellenwertbereich der Genehmigungs-Policy gesperrt werden. Der Transferbetrag wird dann mit den Schwellenwerten für die Genehmigungs-Policy abgeglichen, und die erforderlichen Genehmiger und ihre Genehmigungssequenzen werden aus der Genehmigungs-Policy abgeleitet. - Genehmiger mit mehreren Ebenen verwenden die Methode
approveTransaction, um den Transfer in der genauen Reihenfolge zu prüfen und zu autorisieren, die in der Genehmigungs-Policy definiert ist. Wenn die Genehmigungs-Policy null Genehmiger angibt, kann der Notar die Transaktion mit der MethodeexecuteHoldTokensdirekt abschließen. Das System validiert die KYC- und AML-Compliance und das Einschränkungskennzeichen bei jedem Aufruf vonexecuteHoldTokensundapproveTransactionerneut. Wenn eine Prüfung fehlschlägt, wird die Transaktion blockiert. - Nachdem alle Genehmigungen erfolgreich abgeschlossen wurden, verwendet der zugewiesene Notar die Methode
executeHoldTokens, um die Übertragung auf das Konto des Empfängers abzuschließen. - Der Brenner verwendet die Methode
requestBurn, um eine Anfrage zum Brennen von Stablecoins zu stellen. - Der Notar verwendet die Methode
approveBurn, um die Burn-Anforderung zu genehmigen. - Tokenadministratoren und -auditoren verwenden
getStablecointAccountTransactionHistoryundgetStablecoinAccountTransactionHistoryWithFilters, um alle Tokenereignisse zu verfolgen, einschließlich Minting, Halten, Genehmigungsabläufe auf mehreren Ebenen, Übertragungen und Brennen.
Postman Sammlung
| Variable | Beschreibung | Standardwert |
|---|---|---|
bc-instance-client-id |
Die Client-ID des Oracle Blockchain Platform-Cloud-Service. | bc-instance-client-id |
bc-instance-client-secret |
Das Client Secret des Oracle Blockchain Platform-Cloud-Service. | bc-instance-client-secret |
int-app-client-id |
Die Client-ID der vertraulichen Oracle Identity Cloud Service-(IDCS-)Anwendung, mit der ein IDCS-Benutzer in der Benutzer-API CreateIDCS erstellt wird.
|
int-app-client-id |
int-app-client-secret |
Das Client Secret der vertraulichen IDCS-Anwendung, mit dem ein IDCS-Benutzer in der Benutzer-API CreateIDCS erstellt wird.
|
int-app-client-secret |
Weitere Informationen finden Sie unter Wrapper API Package Components in Blockchain App Builder for Oracle Blockchain Platform.