3.2.1 ユーザーの管理

GoldenGate Stream Analyticsをインストールしたら、アプリケーションを使用するユーザーを認証および管理することが重要です。

ユーザーの詳細はデータベースに格納されます。インストール時にGGSAスキーマを作成すると、次のデータベース表の各表に1つのレコードが移入されます:

  • osa_users — ユーザーを格納した表

  • osa_user_roles — ユーザー名とその関連ロールを格納した表

osa_users表からすべてのデータを取得する問合せを実行すると、次の内容が表示されます。

select * from osa_users;
+----+----------+--------------------------------------+ 
| id | username | pwd                                  | 
+----+----------+--------------------------------------+ 
|  1 | osaadmin | 7wKx1wn3sC41KWo7nIAkCbF8CibQLv3Kj1RcKQgp0vUyNQ@A | 
+----+----------+--------------------------------------+ 

ここで、osaadminは、暗号化されたパスワードを持つ事前構成済ユーザーです。

osa_user_roles表からすべてのデータを取得する問合せを実行すると、次の内容が表示されます。

select * from osa_user_roles;
+---------+---------+
| user_id | role_id |
+---------+---------+
|       1 |       1 |
+---------+---------+

ここで、値1role_idは、そのユーザーが管理者であることを示します。

3.2.1.1 ユーザーの追加

事前構成済ユーザーでOracle GoldenGate Stream Analyticsを使用し続けることはできますが、独自のユーザーを作成してデフォルトの事前構成済ユーザーを削除するのがベスト・プラクティスです。

ユーザーを追加する場合、必須ではありませんが、パスワードを不明瞭化または暗号化することを強くお薦めします。アプリケーション・サーバー(Jetty)に付属するユーティリティを使用して、パスワードを暗号化できます。

ユーザー・インタフェースを使用したユーザーの追加

Oracle GoldenGate Stream Analyticsのアプリケーション・ユーザー・インタフェースを使用して、ユーザーを追加または作成できます。

新規ユーザーを追加するには:

  1. 「システム設定」に移動します。

  2. 「ユーザー管理」タブで、「ユーザーの追加」をクリックします。

  3. 「ユーザー名」「パスワード」および「パスワードの確認」フィールドに詳細を入力します。

  4. 「作成」をクリックします。

    使用可能なユーザーのリストに、事前定義されたユーザーと一緒に新しいユーザーが表示されます。

要件に基づいて必要なユーザーの数だけこれらのステップを繰り返します。既存のユーザーと同じ名前のユーザーを追加しようとすると、「ユーザー名が<username>のユーザー・プロファイルはすでに存在します。別のユーザー名を指定してください。」というエラーが表示されます。

コードを使用したユーザーの追加

新規ユーザーを追加するには:

  1. 「セキュア・パスワードの生成」のステップに従って、セキュアなパスワードを生成します。
  2. /osa-base/etc/osa-datasource.xmlで構成したデータベース・ユーザー資格証明を使用して、データベースに接続します。
  3. 暗号化されたパスワードを使用して、osa_users表にレコードを挿入します:
    insert into osa_users (id,username,pwd) values (2,'NewUser','7wKx1wn3sC41KWo7nIAkCbF8CibQLv3Kj1RcKQgp0vUyNQ@A');
  4. 次のいずれかのコマンドを使用して、osa_user_roles表にレコードを挿入します。
    insert into osa_user_roles (user_id, role_id) values (2,1);

    重要:

    現在のところ、Oracle GoldenGate Stream Analyticsでは、1つのユーザー・ロール(管理者ロール)のみがサポートされます。そのため、role_idの値は、常に1である必要があります。
これで、<password>を使用してNewUserとしてOracle GoldenGate Stream Analyticsにログインできます。必要なユーザーの数だけこれらの作成ステップを繰り返します。

3.2.1.2 パスワードの変更

ユーザー・インタフェースを使用したパスワードの変更

ユーザーのパスワードを変更するには:

  1. 「システム設定」に移動します。

  2. 「ユーザー管理」タブをクリックします。

  3. 使用可能なユーザーのリスト内で適切なユーザーの横にある「パスワードの変更」をクリックし、新しいパスワードの値を入力して「保存」をクリックします。

コードを使用したパスワードの変更

ユーザーのパスワードを変更するには:

  1. 「セキュア・パスワードの生成」のステップに従って、セキュアなパスワードを生成します。
  2. osa_users表で関連するレコードを更新します。次に例を示します。
    update osa_users set pwd='7wKx1wn3sC41KWo7nIAkCbF8CibQLv3Kj1RcKQgp0vUyNQ@A' where username='NewUser';
    このコマンドにより、NewUserのパスワードが更新されます。
次回NewUserでログインしたときは、必ず更新したパスワードを使用してください。

3.2.1.3 ユーザーの削除

不要になったユーザーは、削除できます。

ユーザーの削除操作を進める前に、次のことに留意してください。

  • ドラフト・パイプラインを所有するユーザーが削除されると、そのパイプラインは、削除時の選択に基づいて現在のユーザーに移行されるか、削除されます。

  • 自分自身を削除しようとすると、確認後に自分のドラフト・パイプラインはすべて削除されます。現在のユーザー・セッションは無効化され、アプリケーションから即座にサインアウトされます。

ユーザー・インタフェースを使用したユーザーの削除

ユーザーを削除するには:

  1. 「システム設定」に移動します。

  2. 「ユーザー管理」タブをクリックします。

  3. 使用可能なユーザーのリスト内で適切なユーザーの横にある「削除」をクリックし、確認ダイアログで「OK」をクリックします。

コードを使用したユーザーの削除

ユーザーを削除するには:

  1. SQLPLUSまたはSQLDeveloperツールから次のコマンドを実行して、ユーザーを削除します:
    delete from osa_users where id=2;
    このコマンドにより、ID値が2のユーザー(データベース内の2番目のユーザー)が削除されます。
  2. 次のコマンドを実行して、前述のステップのユーザーに対応するユーザー・ロールを削除します。
    delete from osa_user_roles where user_id=2;