ページの先頭行へ戻る
PRIMEFLEX for HA Database 業務開発ガイド(Native SQL編)
FUJITSU Integrated System

3.1.1 利用者制御

利用者制御は、データベースにアクセスする利用者を制限するための機能です。利用者の認証識別情報などのユーザ属性に関するチューニングやデータベース利用者の登録を行います。

3.1.1.1 ユーザ属性の設定

ユーザ属性は、PRIMEFLEX for HA Databaseのセットアップ時に省略値が設定されています。

利用者制御のユーザパラメタの値をチューニングすることで、ユーザ属性の値を変更することができます。ユーザパラメタのチューニングは、SET SYSTEM PARAMETER文、CREATE USER文またはALTER USER文で行います。

ユーザパラメタの設定値は、次のコネクション接続時に有効になります。

ユーザパラメタの一覧を以下に示します。

表3.1 ユーザパラメタ一覧

ユーザパラメタ名

意味

指定できる
SQ
L文

ユーザパラメタ値

省略値

SP

CU

AU

PASSWORD_CHANGE_TIME

何日前からパスワードの変更を勧めるかの日数

最小:0
最大:128
単位:日数

0

PASSWORD_LIMIT_TIME

パスワードの期限

最小:-1
最大:128
単位:日数
0:無制限

無制限

INVALID_PASSWORD _WAIT_TIME

パスワード誤り時の待ち時間

最小:0
最大:5
単位:秒

4

INVALID_PASSWORD_TIME

パスワード連続失敗の可能回数

最小:0
最大:10
単位:回

5

MIN_PASSWORD_SIZE

パスワードに最低限必要なバイト数

最小:6
最大:8
単位:バイト

6

DEFAULT_ROLE

デフォルトロールの指定

×

×

ロール名

なし

SP :SET SYSTEM PARAMETER文

CU :CREATE USER文

AU :ALTER USER文

○ :指定できます。

× :指定できません。


ユーザパラメタのチューニング指針

ユーザパラメタのチューニングには、以下があります。

ユーザパラメタのチューニングは、SET SYSTEM PARAMETER文で行います。1人の利用者に対して個別にチューニングする場合は、CREATE USER文またはALTER USER文で行います。

利用者の認証識別のチューニング

利用者の認証識別のチューニング指針を以下に示します。

パスワードの期限の設定

パスワードは、システムのセキュリティ強度に合わせて、適切なパスワード期限を設定する必要があります。

パスワードの期限は、以下の項目を考慮して決定します。

  • パスワードに使用できる文字種

  • パスワードに最低限必要なバイト数

  • パスワードの誤り時の待ち時間

参照

パスワードに使用できる文字種の詳細については、“Symfoware Server SQLリファレンス”の“CREATE USER文(利用者定義文)”を参照してください。

パスワードに最低限必要なバイト数をチューニングするには、MIN_PASSWORD_SIZEを使用します。

パスワードの誤り時の待ち時間をチューニングするには、INVALID_PASSWORD_WAIT_TIMEを使用します。

これらを組み合わせてパスワードが見破られる確率を導き出した上で、パスワードの期限を決めます。パスワードの期限をチューニングするには、PASSWORD_LIMIT_TIMEを使用します。

連続失敗回数の設定

パスワードを連続して誤った際にパスワードロックされるまでの猶予の回数を設定します。

データベース専用利用者が、この回数を超えてパスワードを誤った場合、そのパスワードは自動的にシステムがロックします。

パスワードのロックは、システムまたは管理者が不当な利用者を発見した場合に、その利用者を制限する目的で行います。

パスワードのロックの対象となる利用者は、データベース専用利用者のみで、以下の場合に行います。

  • 利用者がパスワードの連続失敗回数を超えたため、システムが自動的にパスワードをロックする場合

  • 管理者がALTER USER文を実行して、利用者のパスワードをロックする場合

パスワードがロックされた利用者は、サーバシステムへの接続ができなくなります。

いずれの場合も、管理者がALTER USER文を実行して、利用者のパスワードを再設定することで、パスワードのロックは解除され、利用者名を再利用することができます。

参照

ALTER USER文については、“Symfoware Server SQLリファレンス”を参照してください。

パスワードの連続失敗回数は、システムのセキュリティ強度に合わせて、適切な回数を設定する必要があります。この回数を設定することにより、不正な利用者から攻撃を受けた場合にも、システムを防御することができます。

これをチューニングするには、INVALID_PASSWORD_TIMEを使用します。

変更催促期間の設定

パスワードを変更してからある程度の時間が過ぎると、パスワードの変更催促期間に入り、利用者にパスワードの変更を促します。変更催促期間とは、パスワードの期限の数日前から期限当日までの間で、パスワード変更の催促する警告メッセージを表示する期間のことです。

パスワードの有効期限までにパスワードが変更されない場合は、利用者のパスワードは無効になります。

無効になったパスワードは、管理者がALTER USER文を実行して、利用者のパスワードを再設定することで、利用者名を再利用することができます。

参照

ALTER USER文については、“Symfoware Server SQLリファレンス”を参照してください。

変更催促期間をチューニングするには、PASSWORD_CHANGE_TIMEを使用します。

デフォルトロールの設定

デフォルトロールとは、アプリケーション中でSET ROLE文を実行せずに有効となるロールを、環境構築時にあらかじめ設定しておくことです。

デフォルトロールは、インストール時にユーザパラメタの省略値が設定されません。環境構築時に、権限情報の定義でロールを作成した場合に有効となります。

デフォルトロールの設定については、“3.3.9 権限情報定義”を参照してください。

ユーザパラメタのチューニング

ユーザパラメタの省略値をチューニングできます。

ユーザパラメタのチューニングは、rdbddlexコマンドのSET SYSTEM PARAMETER文で行います。

パスワードの期限を30日に、パスワードの連続失敗回数を4回に、変更催促期間を3日にチューニングする例を以下に示します。

$ rdbddlex /disk3/rdb/data/syspara2.dat

/disk3/rdb/data/syspara2.datの内容を以下に示します。

SET SYSTEM PARAMETER
    PASSWORD_LIMIT_TIME=30,
    INVALID_PASSWORD_TIME=4,
    PASSWORD_CHANGE_TIME=3 ;

参照

SET SYSTEM PARAMETER文の詳細については、“Symfoware Server SQLリファレンス”を参照してください。

ユーザパラメタには、利用者ごとにチューニングできるパラメタもあります。利用者ごとのチューニングを行う場合は、CREATE USER文で指定します。

チューニングしたユーザパラメタは、rdbprtコマンドで参照することができます。

参照

rdbprtコマンドの詳細については、“Symfoware Server コマンドリファレンス”を参照してください。

3.1.1.2 利用者の登録

PRIMEFLEX for HA Databaseのデータベースにアクセスできる利用者を登録します。

利用者の登録時に、利用者ごとにユーザパラメタを設定することもできます。利用者の登録は、rdbddlexコマンドのCREATE USER文で行います。

利用者の登録時には、以下の3つの情報を設定します。

利用者の種類

“データベース専用利用者(PRIMEFLEX for HA Databaseの認証機構を使用する利用者)”のみ設定できます。

パスワード

利用者が自分のパスワードを決めるまでの仮設定のパスワードです。

注意

管理者は、このパスワードを利用者に別途通知します。

パスワード通知時には、内容が他人に漏れないように注意してください。

また、パスワードを受け取った利用者は、SET USER PASSWORD文を利用して、すぐに自分用のパスワードに変更する必要があります。

ユーザパラメタ

利用者にどのような認証情報を設定するかといった、基本的なセキュリティ上の動作を決めるための情報です。


利用者“SUZUKI”をデータベース専用利用者とし、このユーザのパスワードの期限を10日にして登録する例を以下に示します。

$ rdbddlex /disk3/rdb/data/cusr.dat

/disk3/rdb/data/cusr.datの内容を以下に示します。

CREATE USER SUZUKI
       WITH DBMS PASSWORD 'S%X#01'
       FOR USER 
       PASSWORD_LIMIT_TIME=10 ;

参照

CREATE USER文およびSET USER PASSWORD文の詳細については、“Symfoware Server SQLリファレンス”を参照してください。