4 ユーザー管理

認証サーバーの構成

LDAPサーバーはOracle Blockchain Platform Enterprise Editionに付属していますが、独自の認証サーバーを統合することもできます。

現在、次の外部認証サーバーがサポートされています:
  • OpenLDAP 2.4.44以降
  • Oracle Internet Directory 12.2.1.4.0以降
  • Oracle Unified Directory 12.2.1.4.0以降
  • 単一ドメインのMicrosoft Active Directory Windows Server 2016以降

Blockchain Platform Manager内の各インスタンスは、同じ認証サーバーを使用します。Blockchain Platform Managerインスタンスを複数作成し、それぞれ異なる認証サーバーを使用することも、認証サーバーを共有することもできます。

Oracle Blockchain Platform内でのアイデンティティ・リソースのライフサイクル

Blockchain Platform Managerを使用してインスタンスをプロビジョニングすると、埋込みLDAPサーバーがデプロイされ(独自のものを指定しない場合)、LDAPグループOBP_<platform-name>_<instance-name>_xxxxが作成されます。

インスタンスを削除すると、Blockchain Platform Managerでは、LDAPグループなどのLDAPアセットがすべて、指定したLDAPサーバーから削除されます。

組込みLDAPサーバーの構成

組込みLDAPサーバーには、ログイン時にデフォルト構成がすでに設定されています。これをテストに使用したり、構成をニーズに合せて変更できます。

  1. 「構成」タブを開きます。
  2. 新規追加をクリックします。
  3. LDAPサーバーの構成情報を入力します:
    1. 構成名:
      名前に使用できるのは、ASCII英数字とアンダースコアのみです。
    2. 認証サーバー・タイプ:
      OpenLDAP/OIDを選択します。
    3. ホスト:
      ディレクトリ・サーバーの完全修飾ホスト名を入力します。
    4. ポート:
      ディレクトリ・サーバーのポート番号を入力します。
    5. TLS有効:
      これをTrueに設定すると、SSL経由でユーザー名およびパスワードを使用してディレクトリ・サーバーに接続することになります。
    6. 接続タイムアウト:
      ミリ秒単位。
    7. ベースDN:
      接続先ディレクトリのベース識別名を入力します。形式は、ou=organizationunit,dc=mycompany,dc=comにする必要があります
    8. 認証サーバーのルートCA証明書:
      サード・パーティのTLS証明書または自己署名証明書を使用している場合は、それを.crtファイルでアップロードします。
    9. バインド・ユーザーDN:
      管理ユーザー・アカウントの識別名。
    10. バインド・ユーザー・パスワード:
      アカウントのパスワード。
    11. UserName属性:
      これは、ログイン・ユーザー名を識別名に変換するために検索時に使用されるフィルタです。
    12. ユーザー・クラス名:
      ディレクトリ内のユーザー・オブジェクトに対する属性値。
    13. GroupName属性:
      これは、グループ名を識別名に変換するために検索時に使用されるフィルタです。
    14. グループ・メンバーシップ属性:
      グループのメンバーシップ属性名。
    15. グループ・クラス名:
      ディレクトリ内のグループ・オブジェクトのObjectClass属性値。
  4. 構成のテストをクリックして、設定が機能することを確認します。テスト結果に、構成が成功したかどうかが表示されます。
  5. 保存をクリックします。これで、プロビジョニングするインスタンスで構成が使用できるようになりました。

アクティブなLDAP構成フィールドで選択してLDAP構成を選択したら、「スクリプトを使用したLDAPサーバーへのユーザーの追加」または「Blockchain Platform Managerを使用したLDAPサーバーへのユーザーの追加」の説明に従って、管理IDを指定してBlockchain Platform Managerからログアウトし、LDAPサーバーに存在するユーザーIDを指定してログインする必要があります。

このユーザーIDでBlockchain Platform Managerに正常にログインしてインスタンスをプロビジョニングした後、セキュリティ上の理由から、デフォルトのユーザーID (obpadmin)を無効にしたい場合があります。これは、構成ページのプラットフォーム設定タブから実行できます。

スクリプトを使用したLDAPサーバーへのユーザーの追加

Blockchain Platform ManagerでLDAPサーバーを構成したら、LDAPサーバーにユーザーを追加してインスタンスを作成する必要があります。

次のステップでは、提供されたスクリプトを使用して、組込みLDAPサーバーに初期ユーザーを追加する方法について説明します:
  1. UNIXユーザーとしてVMインスタンスにログインします。初期ユーザー名とパスワードは、oracleWelcome1です。パスワードをすぐに変更するよう求められます。
  2. ディレクトリを/u01/blockchain/ldap/environmentに変更し、adduser.shスクリプトを実行します:
    1. cd /u01/blockchain/ldap/environment/
    2. ./adduser.sh user_name platform_name
      platform_nameは、Blockchain Platform Manager構成ページのプラットフォーム設定タブで設定されたプラットフォーム・マネージャ名です。
    3. 新しいユーザーのパスワードと、ユーザーおよびグループの追加リクエストを認証する管理者のパスワードの入力を求められます。
    4. スクリプトにより、インスタンスを作成および変更するためにBlockchain Platform Managerへの管理アクセス権を持つグループOBP_<platform name>_CP_ADMINに新しいユーザーが追加されます。

Blockchain Platform Managerからログアウトしたことを確認した後、このユーザーIDおよびパスワードを使用してログインします。これで、Oracle Blockchain Platformインスタンスをプロビジョニングできます。

このユーザーIDでBlockchain Platform Managerに正常にログインしてインスタンスをプロビジョニングした後、セキュリティ上の理由から、デフォルトのユーザーID (obpadmin)を無効にしたい場合があります。これは、構成ページのプラットフォーム設定タブから実行できます。

Blockchain Platform Managerを使用したLDAPサーバーへのユーザーの追加

Blockchain Platform ManagerでLDAPサーバーを構成したら、LDAPサーバーにユーザーを追加し、追加したいずれかのユーザーでBlockchain Platform Managerにログインしてインスタンスを作成します。

LDAP構成を作成したら、LDAPサーバーに初期ユーザーを追加する必要があります。Blockchain Platform Manager認証サーバー構成ページで、ユーザーの追加をクリックします。ユーザー名とパスワードを入力すると、このユーザーが管理ユーザーとしてLDAPサーバーに追加されます。これで、管理IDを指定してBlockchain Platform Managerからログアウトし、このユーザーIDを指定してログインしてインスタンスを作成できるようになりました。

Blockchain Platform Managerからログアウトしたことを確認した後、このユーザーIDおよびパスワードを使用してログインします。これで、Oracle Blockchain Platformインスタンスをプロビジョニングできます。

このユーザーIDでBlockchain Platform Managerに正常にログインしてインスタンスをプロビジョニングした後、セキュリティ上の理由から、デフォルトのユーザーID (obpadmin)を無効にしたい場合があります。これは、構成ページのプラットフォーム設定タブから実行できます。

外部OpenLDAP、Oracle Unified DirectoryまたはOracle Internet Directory LDAPサーバーの構成

製品に付属しているLDAPサーバーを使用しない場合は、この構成ステップを完了する前に、ownOpenLDAP、Oracle Unified DirectoryまたはOracle Internet Directoryサーバー12.2.1.4.0以降をインストールしておく必要があります。

  • 本番環境には、外部LDAPサーバーをインストールする必要があります。TLS証明書によって保護される必要があります - 自己署名証明書は内部テストにのみ使用する必要があります。自己署名証明書を使用している場合は、Blockchain Platform Managerを使用してLDAPサーバーを構成する前に、次のステップを実行します:
    1. ルートCAキー/証明書ペアを生成します。
    2. ルートCAペアを使用して署名されたサーバー・キー/証明書ペアを生成します。
  • Blockchain Platform Managerでサーバーを構成する際に、ルートCA証明書をアップロードする必要があります。
  1. 「構成」タブを開きます。
  2. 新規追加をクリックします。
  3. LDAPサーバーの構成情報を入力します:
    1. 構成名:
      名前に使用できるのは、ASCII英数字とアンダースコアのみです。
    2. 認証サーバー・タイプ:
      OpenLDAP/OIDを選択します。
    3. ホスト:
      ディレクトリ・サーバーの完全修飾ホスト名を入力します。
    4. ポート:
      ディレクトリ・サーバーのポート番号を入力します。
    5. TLS有効:
      これをTrueに設定すると、SSL経由でユーザー名およびパスワードを使用してディレクトリ・サーバーに接続することになります。
    6. 接続タイムアウト:
      ミリ秒単位。
    7. ベースDN:
      接続先ディレクトリのベース識別名を入力します。形式は、ou=organizationunit,dc=mycompany,dc=comにする必要があります
    8. 認証サーバーのルートCA証明書:
      サード・パーティのTLS証明書または自己署名証明書を使用している場合は、それを.crtファイルでアップロードします。
    9. バインド・ユーザーDN:
      管理ユーザー・アカウントの識別名。
    10. バインド・ユーザー・パスワード:
      アカウントのパスワード。
    11. UserName属性:
      これは、ログイン・ユーザー名を識別名に変換するために検索時に使用されるフィルタです。
    12. ユーザー・クラス名:
      ディレクトリ内のユーザー・オブジェクトに対する属性値。
    13. GroupName属性:
      これは、グループ名を識別名に変換するために検索時に使用されるフィルタです。
    14. グループ・メンバーシップ属性:
      グループのメンバーシップ属性名。
    15. グループ・クラス名:
      ディレクトリ内のグループ・オブジェクトのObjectClass属性値。
  4. 構成のテストをクリックして、設定が機能することを確認します。テスト結果に、構成が成功したかどうかが表示されます。
  5. 保存をクリックします。これで、プロビジョニングするインスタンスで構成が使用できるようになりました。

認証サーバーフィールドで選択してLDAP構成を選択したら、「外部LDAPサーバーへのユーザーの追加」の説明に従って、管理IDを指定してBlockchain Platform Managerからログアウトし、LDAPサーバーに存在するユーザーIDを指定してログインする必要があります。

外部LDAPサーバーへのユーザーの追加

Blockchain Platform ManagerでLDAPサーバーを構成したら、LDAPサーバーにユーザーを追加してインスタンスを作成する必要があります。

次のステップでは、別にインストールされたLDAPサーバーに初期ユーザーを追加する方法について説明します:
  1. 管理ユーザーがまだ存在しない場合は作成します。
  2. OBP_<platform name>_CP_ADMINグループが存在しない場合は作成します。
  3. ユーザーをOBP_<platform name>_CP_ADMINグループのメンバーとして追加します。

Blockchain Platform Managerからログアウトしたことを確認した後、このユーザーIDおよびパスワードを使用してログインします。これで、Oracle Blockchain Platformインスタンスをプロビジョニングできます。

このユーザーIDでBlockchain Platform Managerに正常にログインしてインスタンスをプロビジョニングした後、セキュリティ上の理由から、デフォルトのユーザーID (obpadmin)を無効にしたい場合があります。これは、構成ページのプラットフォーム設定タブから実行できます。

外部Microsoft Active Directory認証サーバーの構成

製品に付属しているLDAPサーバーを使用しない場合は、この構成ステップを完了する前に、独自の単一ドメインのMicrosoft Active Directory Windows Server 2016以降をインストールしておく必要があります。

  • 本番環境には、外部認証サーバーをインストールする必要があります。CA証明書によって保護される必要があります - 自己署名証明書は内部テストにのみ使用する必要があります。自己署名証明書を使用している場合は、Blockchain Platform Managerを使用して認証サーバーを構成する前に、次のステップを実行します:
    1. ルートCAキー/証明書ペアを生成します。
    2. ルートCAペアを使用して署名されたサーバー・キー/証明書ペアを生成します。
    Blockchain Platform Managerでサーバーを構成する際に、ルートCA証明書をアップロードする必要があります。
  • 必要なすべてのユーザー・グループをMicrosoft Active Directoryで作成してから、Blockchain Platformの認証サーバーとして構成してください。構成プロセス中にユーザーのアクセスおよび機能を制御するために、これらのグループを既存のBlockchain Platformグループにマップします。Blockchain Platformグループおよびそのロールの完全なリストは、「ユーザー・グループおよびロール」を参照してください。

  1. 「構成」タブを開きます。
  2. 新規追加をクリックします。
  3. 認証サーバーの構成情報を入力します:
    1. 構成名:
      名前に使用できるのは、ASCII英数字とアンダースコアのみです。
    2. 認証サーバー・タイプ:
      「Active Directory」を選択します。
    3. プライマリ・ドメイン・コントローラ:
      Active Directoryサーバーのドメイン・コントローラを入力します。
    4. バックアップ・ドメイン・コントローラ:
      オプション: Active Directoryサーバーのバックアップ・ドメイン・コントローラを入力します。最大2つ追加できます。Blockchain Platform Managerが最初のバックアップに接続できない場合、2番目のバックアップへの接続が自動的に試行されます。
    5. ポート:
      ディレクトリ・サーバーのポート番号を入力します。
    6. TLS有効:
      これをTrueに設定すると、SSL経由でユーザー名およびパスワードを使用してディレクトリ・サーバーに接続することになります。
    7. ベースDN:
      接続先ディレクトリのベース識別名を入力します。形式は、ou=organizationunit,dc=mycompany,dc=comにする必要があります
    8. 認証サーバーのルートCA証明書:
      .crtファイルで、認可サーバーのルートCA証明書をアップロードします。
    9. ユーザー名:
      ユーザー・アカウントのユーザー名を入力します。読取り機能を持つユーザー・アカウントで十分です。
    10. パスワード:
      アカウントのパスワード。
    11. UserName属性:
      これは、ログイン・ユーザー名を識別名に変換するために検索時に使用されるフィルタです。
    12. ユーザー・クラス名:
      ディレクトリ内のユーザー・オブジェクトに対する属性値。
    13. GroupName属性:
      これは、グループ名を識別名に変換するために検索時に使用されるフィルタです。
    14. グループ・メンバーシップ属性:
      グループのメンバーシップ属性名。
    15. グループ・クラス名:
      ディレクトリ内のグループ・オブジェクトのObjectClass属性値。
  4. ユーザーのアクセスおよび機能を制御するBlockchain PlatformグループにActive Directoryグループ名をマップします:
    1. Blockchain Platform Managerユーザー
    2. CA管理者
    3. RESTプロキシ・クライアント・ユーザー
    4. ブロックチェーン・インスタンス管理者
    5. ブロックチェーン・インスタンス・ユーザー
    すべてのグループをMicrosoft Active Directoryで作成してから、認証サーバーとして構成してください。各グループの詳細は、「ユーザー・グループおよびロール」を参照してください。
  5. 構成のテストをクリックして、設定が機能することを確認します。テスト結果に、構成が成功したかどうかが表示されます。
  6. 保存をクリックします。これで、プロビジョニングするインスタンスで構成が使用できるようになりました。

認証サーバーフィールドで選択して認証サーバー構成を選択した後、管理IDを指定してBlockchain Platform Managerからログアウトし、Active Directoryに存在しBlockchain Platform Managerユーザー・グループのメンバーシップを保有するユーザーIDを指定してログインする必要があります。

ユーザー・グループおよびロール

この概要では、Oracle Blockchain Platformに関連するグループおよびロールについて説明します。Oracle Blockchain Platformを使用または管理するユーザーは誰でも、認証サーバーに追加して適切なグループを付与する必要があります。

グループ

Oracle Blockchain Platformで使用可能なグループ・ロールを次に示します。

ユーザー・ロール LDAP/Oracle Internet Directory/Oracle Unified Directory内のLDAPグループ名 Microsoft Active Directoryのグループ名 説明
アプリケーション OBP_<platform-name>_<instance-name> 該当なし

個々のインスタンスのセキュリティ識別子。

制御プレーン管理 OBP_<platform-name>_CP_ADMIN Blockchain Platform Managerユーザー

ユーザーは、新しいOracle Blockchain Platformインスタンスのプロビジョニング、既存のインスタンスの構成、LDAP構成の設定およびOracle Blockchain Platformインスタンスに対するライフ・サイクル操作の実行が可能です。

ユーザーがBlockchain Platform Managerにログインしたり、インスタンスを作成できるようにするには、このグループのメンバーである必要があります。

CA管理者 OBP_<platform-name>_<instance-name>_CA_ADMIN CA管理者

CA管理者グループは、Oracle Blockchain Platformアプリケーションのブートストラップおよび全体の管理者です。インスタンスを作成するには、ユーザーはこのグループの一部である必要があります。

インスタンス管理者 OBP_<platform-name>_<instance-name>_ADMIN ブロックチェーン・インスタンス管理者

このグループのユーザーは、コンソールUIまたはRESTを介してインスタンスを管理できます。インスタンスを作成するには、ユーザーはこのグループの一部である必要があります。

このユーザー・ロールで使用できるコンソール機能の詳細リストは、「ユーザー・ロール別コンソール機能のアクセス制御リスト」の表を参照してください。

インスタンス・ユーザー OBP_<platform-name>_<instance-name>_USER ブロックチェーン・インスタンス・ユーザー

このグループのユーザーは、コンソールUIまたはRESTを介してインスタンスを表示できます

このユーザー・ロールで使用できるコンソール機能の詳細リストは、「ユーザー・ロール別コンソール機能のアクセス制御リスト」の表を参照してください。

RESTプロキシ・クライアント OBP_<platform-name>_<instance-name>_REST RESTプロキシ・クライアント・ユーザー このグループのユーザーは、RESTプロキシをコールして、デフォルト登録を使用してトランザクションを実行できます。
カスタムRESTクライアント OBP_<platform-name>_<instance-name>_REST_<custom-enrollment> <Rest Proxy Client Users group name>_<custom enrolment name> このグループのユーザーは、RESTプロキシをコールして、カスタム登録を使用してトランザクションを実行できます。

ユーザー・ロール別コンソール機能のアクセス制御リスト

次の表に、インスタンス管理者ロールとインスタンス・ユーザー・ロールで使用可能なコンソール機能を示します。

機能 インスタンス管理者 インスタンス・ユーザー

ダッシュボード

ネットワーク: 組織のリスト

ネットワーク: 組織の追加

不可

ネットワーク: オーダリング・サービス設定

不可

ネットワーク: 証明書のエクスポート

不可

ネットワーク: オーダラ設定のエクスポート

ノード: リスト

ノード: 起動/停止/再起動

不可

ノード: 属性の表示

ノード: 属性の編集

不可

ノード: メトリックの表示

ノード: ピアのエクスポート/インポート

不可

ピア・ノード: チャネルのリスト

ピア・ノード: チャネルへの参加

不可

ピア・ノード: チェーンコードのリスト

チャネル: リスト

チャネル: 作成

不可

チャネル: チャネルへの組織の追加

不可

チャネル: オーダリング・サービス設定の更新

不可

チャネル: 台帳の表示/問合せ

チャネル: インスタンス化されたチェーンコードのリスト

チャネル: 参加したピアのリスト

チャネル: アンカー・ピアの設定

不可

チャネル: チェーンコードのアップグレード

不可

チェーンコード: リスト

チェーンコード: インストール

不可

チェーンコード: インスタンス化

不可

サンプル・チェーンコード: インストール

不可

サンプル・チェーンコード: インスタンス化

不可

サンプル・チェーンコード: 呼出し

CRL

不可