Wholesale CBDCサンプル・アプリケーションの前提条件

Oracle Visual Builderサンプル・アプリケーション・パッケージをインポートする前に、次に示すように、必要なすべてのOracle Cloud Infrastructure (OCI)リソースおよびOracle Identity Cloud Service (IDCS)グループの作成など、いくつかの前提条件を完了することが不可欠です。

Visual Builder Cloud Service

Wholesale CBDCアプリケーション・サンプルは、Oracle Visual Builder Cloud Serviceを使用して構築されています。パッケージを使用するには、パッケージをVisual Builderにインポートする必要があります。

Visual Builderの詳細は、Visual Builderを参照してください。

  1. Oracle Cloud Infrastructureアカウントにサインインします。
    サンプル・アプリケーションをデプロイする正しいコンパートメントにいることを確認してください。
  2. コンソールで、左上隅の「ナビゲーション」メニューをクリックします。
  3. 「開発者サービス」で、「ビジュアル・ビルダー」を選択します。
  4. Visual Builderインタフェースで、「インスタンスの作成」をクリックします。
    1. インスタンス名を入力し、必要に応じてデフォルトのネットワーク・アクセスまたは別のオプションを選択します。
    2. 「ビジュアル・ビルダー・グループの作成」をクリックします。
Visual Builderがプロビジョニングされると、卸売CBDCサンプル・アプリケーションとの対話に使用するインタフェースであるVisual Builder Designerを調べることができます。デザイナのツアーを参照してください。

Oracle Autonomous Databaseのプロビジョニング

すべての勘定科目トランザクション・データは、リッチ履歴データベースに格納され、リッチ履歴データベースからフェッチされます。リッチ履歴データベースを使用するには、Oracle Autonomous Databaseのインスタンスを作成する必要があります。

Oracle Blockchain Platformのリッチな履歴データベースの詳細は、リッチ履歴データベースの作成に関する項を参照してください。

汎用モードで、Oracle Blockchain Platformのシステム所有者(中央銀行)インスタンスにリンクされているデータベース・インスタンスを1つ作成します。

機密トランザクション機能をサポートする機密モードでは、システム所有者を含む各参加組織にOracle Autonomous Databaseの専用インスタンスが必要です。

また、機密モードの場合、システム所有者データベースにはすべての関係者トランザクション履歴へのアクセス権が必要です。データベース・ビュー定義スクリプトを実行すると、システム所有者データベースに参加者データベースが接続されます。Oracle Autonomous Databaseには、組込みの制限があります。デフォルトでは、各データベースは他の3つのデータベースにのみ接続できます。これは、システム所有者がすべての参加者データベースに関連付けられている必要があるため、このシナリオのシステム所有者に影響します。デフォルトの構成は、最大3人の参加者がいる場合に機能します。参加者を3人以上追加する予定(アプリケーションで最大6人までサポート)の場合、この制限を引き上げないかぎり、設定スクリプトは失敗します。

この制限により、システム所有者にOracle Autonomous Databaseをプロビジョニングするときに、3つ以上の参加者組織を使用する場合は、Oracle Cloud Infrastructure (OCI)サポートでサービス・リクエスト(SR)を発行します。システム所有者のデータベースの接続制限(OPEN_LINKS)の引上げをリクエストします。Oracle Supportによって制限が更新されたら、設定スクリプトを続行します。

  1. Oracle Cloud Infrastructureアカウントにサインインします。
    サンプル・アプリケーションをデプロイする正しいコンパートメントにいることを確認してください。
  2. コンソールで、「ナビゲーション」メニューで「Oracle Database」を選択します。
  3. ワークロードに基づいて「Autonomous Data Warehouse」「Autonomous JSON Database」または「Autonomous Transaction Processing」を選択します。
  4. 「Autonomous Databaseの作成」を選択します。
    • 表示名: わかりやすい説明(一意ではありません)。
    • データベース名: 文字と数字のみで構成する必要があります(最大30文字)。
    • ワークロード・タイプ: 「トランザクション処理」を選択します。
    • デプロイメント・タイプ:デフォルトのServerlessを選択します。
    • データベースの構成:要件に従ってCPUおよびストレージ設定を調整します。ただし、CBDCアプリケーションはデフォルト値で効果的に機能するように設計されているため、CBDCアプリケーションのこれらの設定を変更する必要はありません。
    • バックアップの保持:デフォルト設定を保持します。
    • ネットワーク:
      • アクセス・タイプ: Secure access from allowed IPs and VCNs onlyを選択します。
      • アクセス制御リスト: IP表記法タイプからCIDR blockを選択し、値0.0.0.0/0を入力します。
      • 相互TLS (mTLS)認証: mTLSは必要ありません。
  5. 設定を選択した後、「Autonomous Databaseの作成」を選択します。
    プロビジョニングが完了すると、Lifecycle StateAvailableになります。

Oracle Blockchain Platform Digital Assets Editionのプロビジョニング

サンプル・アプリケーションで使用するには、Oracle Blockchain Platform Digital Assets Editionインスタンスがプロビジョニングされている必要があります。

Oracle Blockchain Platform Digital Assets Editionインスタンスは任意の名前で作成できます。ただし、アプリケーションでは、Oracle Blockchain Platform Digital Assets Editionネットワークの創設者として1つのシステム所有者(中央銀行)と、ネットワーク内の関係者銀行として6つの参加者組織(Bank1、Bank2、Bank3、Bank4、Bank5およびBank6)がサポートされます。

適切な構成を確実にするには、中央銀行セクションで創設者組織の詳細を更新し、「銀行」セクションで関係者組織を更新する必要があります。参加者組織の固定順序を維持することが不可欠です。Bank1は参加者1に対応し、Bank2は参加者2に対応しています。同じ詳細を使用して、それぞれの銀行詳細を適宜更新する必要があります。

  1. Oracle Cloud Infrastructureアカウントにサインインします。
    サンプル・アプリケーションをデプロイする正しいコンパートメントにいることを確認します。
  2. コンソールで、左上隅の「ナビゲーション」メニューをクリックします。
  3. 「開発者サービス」で、「Oracle Blockchain Platform」を選択します。
  4. 「Oracle Blockchain Platformの作成」をクリックします。
    1. インスタンス/表示名: ASCII文字で始まる1から15文字を含める必要があります。
    2. 説明: インスタンスの説明(オプション)を入力します。
    3. プラットフォーム・ロール: 「新規ネットワークの作成」を選択して、ファウンダ組織を作成します。参加者インスタンスの場合は、「既存のネットワークに参加する」を選択します。
    4. プラットフォーム・バージョン: Hyperledger Fabric v2.5.xを選択します。
    5. エディション: 「デジタル・アセット」を選択します。
  5. 設定を確認し、「作成」をクリックします。
    インスタンスの作成には約15分かかる場合があります。完了すると通知が届きます。

Oracle Identity Cloud Serviceを使用したユーザーおよびユーザー・グループの作成

CBDCアプリケーションでは11個のペルソナがサポートされ、対応する11個のアプリケーション・ロールがVisual Builderパッケージにすでに作成されています。これらのロールは、アプリケーション内の各ペルソナの権限およびアクセス・レベルを定義するために必要です。

ロールとその操作の完全なリストは、「CBDCサンプル・アプリケーションの卸売ワークフロー」を参照してください。

Visual Builderのアプリケーション・ロールは、次の目的で作成されます。

  • アクセス・レベルの定義: 各ペルソナ(中央銀行管理者、参加者ユーザーなど)には、アプリケーションの特定の権限およびアクセス要件があります。アプリケーション・ロールにより、ユーザーは自分のロールに関連する機能のみを表示および操作できます。
  • ロール・ベース・アクセス制御(RBAC)の有効化: IDCSグループをこれらのロールにマッピングすることで、アプリケーション内の特定の機能にアクセスできるユーザーを制御できます。
  • ユーザー管理の簡略化: 個々のユーザーに権限を割り当てるかわりに、ロールに割り当て、ユーザーはIDCSグループ・メンバーシップを介してこれらの権限を継承します。

概要

1つのシステム所有者および6つの参加者組織のIDCSグループは、Visual Builderでこれらのアプリケーション・ロールにすでにマップされています。つまり、次の表に示すように、IDCSグループを作成し、それらのグループにユーザーを追加することのみが必要になります。IDCSグループは、Visual Builderの対応するアプリケーション・ロールにすでにマップされています。ユーザーがグループに追加されると、アプリケーションへの正しいアクセス権が自動的に取得されます。

次の表に示すグループを作成し、そのグループにユーザーを追加します。指定された正確な名前でIDCSグループを作成し、これらのグループにユーザーを追加することで、アプリケーションへのロールベースのアクセスを簡単に有効にできます。IDCSグループとVisual Builderロール間のマッピングはすでに構成されているため、これ以上の設定は必要ありません。

IDCSグループの作成とユーザーの管理の詳細は、「Oracle Identity Cloud Serviceユーザーの管理」および「Oracle Identity Cloud Serviceグループの管理」に関する項を参照してください。

表3-1アプリケーション・ロールとそのIDCSグループおよび銀行名

S番号 アプリケーション・ロール IDCSユーザー・グループ 銀行名
1 SYSTEM_ADMINS System_Admins CentralBank
2 SYSTEM_AUDITORS System_Auditors CentralBank
3 SYSTEM_CREATORS System_Creators CentralBank
4 SYSTEM_MANAGERS System_Managers CentralBank
5 SYSTEM_ISSUERS System_Issuers CentralBank
6 SYSTEM_RETIRERS System_Retirers CentralBank
7 ORG_ADMINS Org1_Admins (残りの参加者組織に対してこのパターンを繰り返します: <org>_Admins) Bank1、Bank2、Bank3、Bank4、Bank5およびBank6
8 ORG_USERS Org1_Users (残りの参加者組織に対してこのパターンを繰り返します: <org>_Users) Bank1、Bank2、Bank3、Bank4、Bank5およびBank6
9 ORG_OFFICERS Org1_Officers (残りの参加者組織に対してこのパターンを繰り返します: <org>_Officers) Bank1、Bank2、Bank3、Bank4、Bank5およびBank6
10 ORG_MANAGERS Org1_Managers (残りの参加者組織に対してこのパターンを繰り返します: <org>_Managers) Bank1、Bank2、Bank3、Bank4、Bank5およびBank6
11 ORG_AUDITORS Org1_Auditors (残りの参加者組織に対してこのパターンを繰り返します: <org>_Auditors) Bank1、Bank2、Bank3、Bank4、Bank5およびBank6

IDCSグループをOracle Blockchain Platformインスタンスにマップする場合は、複数のペルソナ固有のグループを個別にマッピングするのではなく、そのインスタンスのすべてのユーザーに対して1つの結合IDCSグループを使用します。1つの結合グループを使用すると、Oracle Blockchain Platform RESTプロキシによって実行されるIDCSグループ・メンバーシップ・チェックの数が減り、パフォーマンスが向上する可能性があります。配置に1つのシステム所有者と6つの関係者銀行が含まれる場合は、すべてのシステム所有者ペルソナを含む1つの結合されたSystemOwnerグループを作成し、それぞれにその銀行のすべての関係者ペルソナが含まれる6つの結合された参加者グループ(銀行ごとに1つ)を作成します。

最適な結果を得るには、各参加者組織およびシステム所有者に次のIDCSグループ構造を使用します。
  • ペルソナ固有のIDCSグループ: これらのグループは、Visual Builderパッケージのアプリケーション・ロールと直接連携します。これらのグループによって、人事部門担当者、監査人、管理者などの個人に対するロール ベース アクセスが定義されます。
  • 1つの結合IDCSグループ: このグループは、組織のすべてのペルソナを統合し、対応するOracle Blockchain Platformインスタンスにマップされます。

すべてのペルソナ固有のIDCSグループ名は、Visual Builderパッケージのアプリケーション・ロール名と正確に一致する必要があります。IDCSグループに異なる名前を使用するには、Visual Builderでアプリケーション・ロールに対応するIDCSグループ・マッピングを更新します。詳細は、Manage User Roles and Accessを参照してください。

グループの作成

  1. Oracle Cloud Infrastructureアカウントにサインインします。サンプル・アプリケーションをデプロイする正しいコンパートメントにいることを確認してください。
  2. コンソールで、左上隅の「ナビゲーション」メニューをクリックします。「アイデンティティおよびセキュリティ」をクリックします。「アイデンティティ」で、「ドメイン」を選択します。
  3. 「ドメイン」ページで、「Oracle Identity Cloud Service」をクリックして「ドメインの概要」ページを開きます。
  4. 「グループ」をクリックします。「グループの作成」をクリックします。
    • 名前: グループの一意の名前を入力します(例: System_Admins)。
    • 説明: グループの目的の簡単な説明を指定します。
    • ユーザーがこのグループへのアクセスをリクエストできるようにするには、「ユーザーがアクセスをリクエスト可能」オプションを選択します。
    「終了」をクリックします。

ユーザーの作成とグループへの割当て

  1. 「ドメインの概要」ページで、「ユーザー」をクリックします。
  2. 「ユーザーの作成」をクリックします。
    • 名:ユーザーの名を入力します。
    • : ユーザーの名を入力します。
    • ユーザー名/電子メール: ログインに有効な電子メール・アドレスまたはユーザー名を入力します。
    • Eメール: 通信およびアカウントのアクティブ化のEメール・アドレスを入力します。
  3. 「グループの割当」ページに、既存のグループのリストが表示されます。
  4. このユーザーを割り当てる各グループの横にあるチェック・ボックスを選択します。ロールと一致する適切なグループ(例: System_Admins)を選択していることを確認します。
  5. 目的のグループを選択した後、「終了」をクリックしてユーザーの作成を完了します。

ユーザーおよびグループの検証

  1. グループを作成してユーザーを追加したら、IDCSコンソールの「グループ」セクションに戻ります。
  2. 作成されたすべてのグループおよび追加されたユーザーが正しくリストされていることを確認します。