設定 Oracle Blockchain Platform for Wholesale CBDC 範例應用程式
建立 Oracle Blockchain Platform 的所有必要執行處理及其先決條件產品之後,您必須設定使用者和角色、將任何參與者組織新增至創始組織,以及啟用豐富的歷史記錄資料庫。
設定 Oracle Blockchain Platform 執行處理的 IDCS 群組
如需有關內建 Oracle Blockchain Platform 角色以及如何指派使用者的其他資訊,請參閱設定使用者和應用程式角色
如需批發 CBDC 範例應用程式角色的其他資訊,請參閱批發 CBDC 應用程式工作流程。
在 Oracle Blockchain Platform 中,應導入下列應用程式角色指派:
- 中央銀行 (CB) 群組:將所有中央銀行群組指派給 CentralBank Oracle Blockchain Platform 執行處理的
REST_CLIENT
應用程式角色。 - 金融機構 (FI) 群組:將所有金融機構群組指派給
REST_CLIENT
應用程式角色及其個別組織。 - 管理角色:將相關的管理群組 (例如
CB_CBDC_ADMIN
和FI_CBDC_ADMINS
) 指派給其個別組織的ADMIN
應用程式角色。
此組態可確保「中央銀行」與「金融機構」群組具有透過 REST_CLIENT
角色的必要存取權,而管理權限則透過 ADMIN
角色適當管理。
請依照下列步驟將群組指派給應用程式角色。
- 登入您的 Oracle Cloud Infrastructure 帳戶。
- 在主控台中,按一下左上角的導覽功能表。
- 在識別下,選取網域。
- 在「網域」頁面上,按一下 Oracle Identity Cloud Service 。
- 在 Oracle Identity Cloud Service 導覽功能表中,選取 Oracle Cloud Services 。尋找要指定群組角色的 Oracle Blockchain Platform 執行處理。開啟該執行處理的「詳細資訊」頁面。
- 移至「應用程式角色」頁籤,檢視「資源」導覽器中所列的 Oracle Identity Cloud Service 應用程式角色。
- 選取您要指派的角色,並展開角色。按一下角色的「其他」功能表,然後選取指派群組。
- 在「指定群組」對話方塊中,選取您要指派給角色的群組,然後按一下指定。
擷取 ClientId
和 ClientSecret
Oracle Blockchain Platform ClientID
和 ClientSecret
將由 Visual Builder 使用。您稍後必須更新 Visual Builder 中的這些參數,如設定 Visual Builder 後端中所述。
擷取 Oracle Blockchain Platform 執行處理的從屬端 ID 和從屬端加密密碼:
- 登入您的 Oracle Cloud Infrastructure 帳戶。確定您具有管理 OAuth 設定值的足夠管理權限。
- 在主控台中,按一下左上角的導覽功能表。
- 在識別下,選取網域。
- 在「網域」頁面上,按一下 Oracle Identity Cloud Service 。
- 在 Oracle Identity Cloud Service 導覽功能表中,選取 Oracle Cloud Services 。尋找要擷取從屬端 ID 和從屬端加密密碼的 Oracle Blockchain Platform 執行處理。開啟該執行處理的「詳細資訊」頁面。
- 當您開啟執行處理詳細資訊頁面時,顯示的預設頁籤將會是 OAuth 組態頁籤。此頁籤包含有關 Oracle Blockchain Platform 執行處理之 OAuth 設定的重要資訊。
您會在「一般資訊」區段中找到標示為「從屬端 ID」和「從屬端密碼」的欄位。這些證明資料主要用來認證對 Oracle Blockchain Platform 的 API 要求。
多重組織組態
如果您正在與多個組織建立複雜的 Oracle Blockchain Platform 網路,請將參與者新增至創始人。Oracle Blockchain Platform 管理手冊提供此程序的簡介:新增 OBCS 參與者組織至網路。
設定 Oracle Blockchain Platform 的豐富歷史記錄資料庫
如需有關設定和使用 Rich History 資料庫的其他資訊,請參閱建立 Rich History 資料庫。
完成這些步驟之前,您必須先建立 Autonomous Database 執行處理 (如佈建 Autonomous Database 中所述),才能啟用 Oracle Blochain Platform 的豐富歷史記錄資料庫。
- 開啟網路執行處理的 Oracle Blockchain Platform 主控台。
- 按一下右上角的其他動作功能表,然後選取設定 Rich History 。
- 提供存取和寫入 Oracle 資料庫的連線字串和證明資料,以指定 Oracle 資料庫連線。請注意,您提供的證明資料是資料庫的證明資料,而 Oracle Blockchain Platform 則不會管理這些證明資料。
- 按一下儲存以設定 Rich History 資料庫。
建立登記
您必須手動為 CB_CBDC_ADMINS
和 FI_CBDC_ADMINS
群組中的使用者建立註冊。
註冊 Oracle Blockchain Platform 的 REST 代理主機可為使用者提供一個機制,讓使用者無須註冊憑證即可與區塊鏈互動,透過將應用程式識別對應至區塊鏈成員來簡化 API 呼叫。若要起始對鏈碼的任何呼叫,必須在 Oracle Blockchain Platform 中建立註冊。
批發 CBDC 應用程式會管理在帳戶設定期間為使用者建立註冊;不過,CBDC 管理使用者第一次登入時不會有註冊存在。因此,如果此使用者嘗試建立帳戶,RestProxy
呼叫將會失敗。因此,建立 CBDC ADMIN 群組的註冊是相當重要的。
設定帳戶時,會為個別組織建立註冊。例如,建立中央銀行 (CB) 帳戶時,會產生對應的註冊。不過,若透過「CBDC 管理」頁面建立任何「金融機構 (FI)」帳戶,則不會自動為這些金融機構建立註冊。在此批發 CBDC 工作流程中,必須在「CB 管理」頁面中設定 FI 管理帳戶。因此,使用者必須手動建立「FI 管理」群組的註冊,因為「中央銀行」與「金融機構」間的不同組織結構不會自動產生這些註冊。
如需有關如何建立登記的完整資訊,請參考新增登記至 REST 代理。
擷取 RestproxyId
RestproxyId
將由 Visual Builder 使用。您稍後必須如設定 Visual Builder 後端所述在 Visual Builder 中更新此資訊。
若要擷取 Oracle Blockchain Platform 執行處理的 RestProxyId
,使用者必須使用管理使用者帳戶呼叫 Oracle Blockchain Platform 主控台 API。可以透過基本認證或 OAuth 2.0 來執行認證。
認證方法
對於 OAuth 2.0,請參閱位於 OAuth 2.0 Access Token Based Authentication 的文件,以實作必要的認證流程。
用於擷取 RestProxyId
的 API 端點
使用 Oracle Blockchain Platform 主控台 API 傳送要求至下列端點,以取得 RestProxyId
:
GET <obp_url>/console/admin/api/v2/nodes
此 API 呼叫將會傳回包含執行處理中所設定 REST 代理主機相關詳細資訊的回應。
如需有關主控台 API 的詳細資訊,請參閱下列文件:取得節點清單。
回應詳細資訊
在回應中,找出標示為 RESTProxies
的區段,您可以在其中找到對應的 RestProxyId
。回應的結構將包含與每個 REST 代理主機節點相關聯的各種屬性。
"RESTProxies": [
{
"status": "up",
"extInfo": [],
"displayName": "restproxy",
"RESTProxyId": "48021a2c-e62b-40bd-b7ca-71dda883521d-restproxy",
"url": "https://fibank3-oabcs1-hyd.blockchain.ocp.oraclecloud.com:7443/restproxy",
"mspId": "FIBank3"
}
]
部署批發 CBDC 範例應用程式的 Chaincode
您現在可以建立通道並將範例應用程式鏈碼部署到該通道。
建立豐富歷史記錄資料庫視觀表
為您的 Oracle Blockchain Platform 執行處理建立豐富的歷史記錄資料庫之後,您可以執行「資料庫檢視建立」命令檔,在豐富的歷史記錄資料庫中建立視觀表並產生 ORDS 端點。
clientId
、clientSecret
以及 Bearer 權杖) 以認證及存取端點。
ORDS_REST_BASE_URL/ords/ALIAS_NAME/BASE_PATH/PATTERN
- ORDS_REST_BASE_URL:ORDS 服務的基礎 URL。
- ALIAS_NAME:ORDS 中設定的資料庫或綱要別名。
- BASE_PATH:RESTful 服務的基本路徑。
- 專利:RESTful 服務的特定端點樣式。
ORDS_REST_BASE_URL/ords/ALIAS_NAME/oauth/token
- clientId
- clientSecret
- ORDS 端點
- OAuth 基礎 URL:
ORDS_REST_BASE_URL/ords/<userName|aliasName>