卸売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の詳細は、ビジュアル・ビルダーを参照してください。

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

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)を発行します。システム所有者のAutonomous Databaseの接続制限(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グループおよび銀行名

シリアル番号 アプリケーション・ロール 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つの関係者銀行が含まれる場合は、すべてのシステム所有者ペルソナを含むSystemOwnerグループを1つ作成し、それぞれにその銀行のすべての関係者ペルソナが含まれる6つの参加者グループ(銀行ごとに1つ)を作成します。

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

ペルソナ固有のIDCSグループ名はすべて、Visual Builderパッケージ内のアプリケーション・ロール名と完全に一致する必要があります。IDCSグループに異なる名前を使用するには、Visual Builderでアプリケーション・ロールの対応するIDCSグループ・マッピングを更新します。詳細は、「ユーザー・ロールおよびアクセスの管理」を参照してください。

グループの作成

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

ユーザーの作成およびグループへの割当て

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

ユーザーおよびグループの確認

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