3.2. 管理ユーザー

デフォルトの JBoss EAP 設定はローカル認証を提供するため、ユーザーは認証の必要なくローカルホスト上で管理 CLI にアクセスできます。

しかし、リモートで管理 CLI にアクセスする場合や管理コンソールを使用する場合 (トラフィックの送信元がローカルホストであってもリモートアクセスとして見なされます) は、管理ユーザーを追加する必要があります。管理ユーザーを追加せずに管理コンソールへアクセスしようとすると、エラーメッセージが出力されます。

グラフィカルインストーラーを使用して JBoss EAP がインストールされた場合は、インストールプロセス中に管理ユーザーが作成されます。

本ガイドでは、add-user スクリプトを使用した JBoss EAP の簡単なユーザー管理を取り上げます。 このスクリプトは既定の認証のプロパティーファイルに新しいユーザーを追加するためのユーティリティーです。

LDAP やロールベースアクセス制御 (RBAC) などの高度な認証および承認のオプションについては、JBoss EAPセキュリティーアーキテクチャーコア管理認証を参照してください。

3.2.1. 管理ユーザーの追加

  1. add-user ユーティリティースクリプトを実行し、プロンプトに従います。

    $ EAP_HOME/bin/add-user.sh
    注記

    Windows Server の場合は、EAP_HOME\bin\add-user.bat スクリプトを使用します。

  2. ENTER を押して、デフォルトのオプション a を選択し、管理ユーザーを追加します。

    このユーザーは ManagementRealm に追加され、管理コンソールまたは管理 CLI を使用して管理操作を実行する権限が与えられます。代わりに b を選択すると、アプリケーションに使用される ApplicationRealm にユーザーが追加され、特定のパーミッションは提供されません。

  3. ユーザー名とパスワードを入力します。入力後、パスワードを確認するよう指示されます。

    注記

    ユーザー名には、以下の文字のみを使用できます。 文字の数と順番は自由です。

    • 英数字 (a-z、A-Z、0-9)
    • ダッシュ (-)、ピリオド (.)、コンマ (,)、アットマーク (@)
    • バックスラッシュ (\)
    • 等号 (=)

    デフォルトでは、脆弱なパスワードは許可されますが、警告が表示されます。

    このデフォルト動作の変更に関する詳細は、Add-User ユーティリティーのパスワード制限の設定 を参照してください。

  4. ユーザーが属するグループのコンマ区切りリストを入力します。ユーザーがグループに属さないようにする場合は ENTER を押して空白のままにします。
  5. 情報を確認し、正しければ yes を入力します。
  6. このユーザーがリモート JBoss EAP サーバーインスタンスを表すかどうかを決定します。基本的な管理ユーザーの場合は no を入力します。

    ManagementRealm への追加が必要になることがあるユーザータイプの 1 つが、JBoss EAP の別のインスタンスを表すユーザーで、メンバーとしてクラスターに参加することを承認できる必要があります。この場合は、プロンプトで yes を選択すると、異なる設定ファイルに追加する必要がある、ユーザーのパスワードを表すハッシュ化された秘密の値が提供されます。

パラメーターを add-user スクリプトに渡すと、非対話的にユーザーを作成できます。ログや履歴ファイルにパスワードが表示されるため、この方法は共有システムでは推奨されません。詳細は Add-User ユーティリティーを非対話的に実行 を参照してください。

3.2.2. Add-User ユーティリティーを非対話的に実行

コマンドラインで引数を渡すと add-user スクリプトを非対話的に実行することができます。最低でも、ユーザー名とパスワードを提供する必要があります。

警告

ログや履歴ファイルにパスワードが表示されるため、この方法は共有システムでは推奨されません。

複数のグループに属するユーザーの作成

以下のコマンドは、guest および mgmtgroup グループの管理ユーザー mgmtuser1 を追加します。

$ EAP_HOME/bin/add-user.sh -u 'mgmtuser1' -p 'password1!' -g 'guest,mgmtgroup'
代替プロパティーファイルの指定

デフォルトでは、add-user スクリプトを使用して作成されたユーザーおよびグループ情報は、サーバー設定ディレクトリーにあるプロパティーファイルに保存されます。

ユーザー情報は以下のプロパティーファイルに保存されます。

  • EAP_HOME/standalone/configuration/mgmt-users.properties
  • EAP_HOME/domain/configuration/mgmt-users.properties

グループ情報は以下のプロパティーファイルに保存されます。

  • EAP_HOME/standalone/configuration/mgmt-groups.properties
  • EAP_HOME/domain/configuration/mgmt-groups.properties

これらのデフォルトディレクトリーとプロパティーファイル名は上書きできます。以下のコマンドは、ユーザープロパティーファイルの名前と場所を指定して、新しいユーザーを追加します。

$ EAP_HOME/bin/add-user.sh -u 'mgmtuser2' -p 'password1!' -sc '/path/to/standaloneconfig/' -dc '/path/to/domainconfig/' -up 'newname.properties'

新しいユーザーは /path/to/standaloneconfig/newname.properties および /path/to/domainconfig/newname.properties にあるユーザープロパティーファイルに追加されます。これらのファイルは存在している必要があり、存在しない場合はエラーが出力されます。

使用できる add-user のすべての引数の完全リストとそれら引数の目的については、--help 引数を指定するか Add-User ユーティリティー引数 の項を参照してください。

3.2.3. Add-User ユーティリティーのパスワード制限

add-user ユーティリティースクリプトのパスワード制限は、EAP_HOME/bin/add-user.properties ファイルを使用して設定できます。

重要

add-user.properties ファイルは保護されていないプレーンテキストファイルです。コンテンツへの不正アクセスを回避するために保護する必要があります。

意図しないパスワードを設定しないようにするには、キーボードのシステムキーマップが正しいことを確認します。デフォルトのシステムキーマップは en-qwerty です。このデフォルト設定を変更して新しいパスワードを作成する場合は、SimplePasswordStrengthChecker クラスにある基準をパスワードが満たしていることを確認する必要があります。

JBoss EAP ではデフォルトで、脆弱なパスワードは許可されますが、警告が表示されます。指定の最低要件を満たさないパスワードを拒否するには、password.restriction プロパティーを REJECT に設定します。

以下の表は、EAP_HOME/bin/add-user.properties ファイルで設定できる追加のパスワード要件の設定を示しています。

表3.1 パスワード要件の追加設定

属性説明

minLength

パスワードの最小文字数。たとえば、password.restriction.minLength=8 はパスワードを最小文字に制限します。

strength

有効なパスワードに必要なしきい値を設定します。有効なしきい値エントリーには以下が含まれます。

* VERY_WEAK

* WEAK

* MODERATE

* MEDIUM

* STRONG

* VERY_STRONG

* EXCEPTIONAL

デフォルト値は MODERATE です。しきい値が定義され、そのデフォルト値が SimplePasswordStrengthChecker クラスに指定されます。

注記: しきい値を指定しない場合は、MODERATE がデフォルト値になります。この値は SimplePasswordStrengthChecker クラスに指定されます。

minAlpha

パスワードに設定されたアルファベットの最小文字数。たとえば、password.restriction.minAlpha=1 は、パスワードに最低 1 文字のアルファベット文字を含めるよう制限します。

minDigit

パスワードに設定された数字のの最小数。たとえば、password.restriction.minDigit=1 は、最低でも 1 つの数字を含むようにパスワードを制限します。

minSymbol

パスワードに設定された記号の最小数。たとえば、password.restriction.min=1 は、パスワードに記号を最低でも 1 文字含めるよう制限します。

forbiddenValue

簡単に思いつくパスワード (root など) を設定しないように、ユーザーを制限します。たとえば、password.restriction.forbidden=root,admin,administrator は、パスワードとして rootadmin、または administrator を設定できないように制限します。

mustNotMatchUsername

ユーザーがユーザー名をパスワードとして設定できないように制限します。たとえば、password.restriction.mustNotMatchUsername=TRUE と指定すると、ユーザーはユーザー名をパスワードとして設定できなくなります。false に設定すると、このルールは無視されます。

その他のリソース

Red Hat カスタマーポータルの 基本的なシステム設定の設定 を参照してください。

3.2.4. 管理ユーザーの更新

add-user ユーティリティースクリプトを使用し、プロンプトに従ってユーザー名を入力すると、既存の管理ユーザーの設定を更新できます。

$ EAP_HOME/bin/add-user.sh

What type of user do you wish to add?
 a) Management User (mgmt-users.properties)
 b) Application User (application-users.properties)
(a): a

Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : test-user
User 'test-user' already exists and is enabled, would you like to...
 a) Update the existing user password and roles
 b) Disable the existing user
 c) Type a new username
(a):

すでに存在するユーザー名を入力すると、複数のオプションが出力されます。

  • 既存ユーザーのパスワードを更新する場合は a を入力します。
  • 既存ユーザーを無効にする場合は b を入力します。
  • 新しいユーザー名を入力する場合は c を入力します。
警告

add-user スクリプトを使用して非対話的にユーザーを更新すると、ユーザーは自動的に更新され、確認のプロンプトは表示されません。