intra-mart Accel Platform 設定ファイルリファレンス 第34版 2024-04-01

パスワード履歴管理設定

概要

パスワードの履歴管理機能の設定です。
パスワード履歴管理機能は、パスワードの履歴管理を行い、パスワードの定期的な変更を促す機能を提供します。
また、パスワードの様々な制約を設定することが可能です。

コラム

2021 Summer(Cattleya) から画面上でテナントごとの設定を変更できます。
詳細は「 テナント管理者操作ガイド 」-「 パスワードポリシーを設定する 」を参照してください。
画面上で設定を変更した場合、そちらの値の方が設定ファイルより優先されます。

モジュール テナント管理機能モジュール
フォーマットファイル(xsd) WEB-INF/schema/password-history-config.xsd
設定場所 WEB-INF/conf/password-history.xml

<?xml version="1.0" encoding="UTF-8"?>
<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <change-password-first-login>true</change-password-first-login>
    <password-expire-limit>0</password-expire-limit>
    <password-history-count>0</password-history-count>
    <deny-client-types>sp</deny-client-types>
    <password-expire-page>/user/password/expire</password-expire-page>
    <check-password enable="true" check-password-class="">
      <check-password-length enable="false" min="0" max="50"/>
      <allow-latin-letters required="false" enable="true">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz</allow-latin-letters>
      <allow-number required="false" enable="true">0123456789</allow-number>
      <allow-extra-char required="false" enable="true">!&quot;#$%&amp;&apos;()+,-./:;&lt;=&gt;?@[\]^_`{|}~</allow-extra-char>
      <allow-group-char required="false"></allow-group-char>
      <deny-old-password include="false">false</deny-old-password>
      <deny-userid include="false">false</deny-userid>
    </check-password>
    <password-cryption-class>jp.co.intra_mart.foundation.security.cryption.standard.StandardCryption</password-cryption-class>
    <return-initial-page>false</return-initial-page>
  </group-default>

  <group name="secondary" accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <change-password-first-login>true</change-password-first-login>
    <password-expire-limit>0</password-expire-limit>
    <password-history-count>0</password-history-count>
    <deny-client-types>sp</deny-client-types>
    <password-expire-page>/user/password/expire</password-expire-page>
    <check-password enable="true" check-password-class="">
      <check-password-length enable="false" min="0" max="50"/>
      <allow-latin-letters required="false" enable="true">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz</allow-latin-letters>
      <allow-number required="false" enable="true">0123456789</allow-number>
      <allow-extra-char required="false" enable="true">!&quot;#$%&amp;&apos;()+,-./:;&lt;=&gt;?@[\]^_`{|}~</allow-extra-char>
      <allow-group-char required="false"></allow-group-char>
      <deny-old-password include="false">false</deny-old-password>
      <deny-userid include="false">false</deny-userid>
    </check-password>
    <password-cryption-class>jp.co.intra_mart.foundation.security.cryption.standard.StandardCryption</password-cryption-class>
    <return-initial-page>false</return-initial-page>
  </group>

  <group name="thirdly" accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <change-password-first-login>true</change-password-first-login>
    <password-expire-limit>0</password-expire-limit>
    <password-history-count>0</password-history-count>
    <deny-client-types>sp</deny-client-types>
    <password-expire-page>/user/password/expire</password-expire-page>
    <check-password enable="true" check-password-class="">
      <check-password-length enable="false" min="0" max="50"/>
      <allow-latin-letters required="false" enable="true">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz</allow-latin-letters>
      <allow-number required="false" enable="true">0123456789</allow-number>
      <allow-extra-char required="false" enable="true">!&quot;#$%&amp;&apos;()+,-./:;&lt;=&gt;?@[\]^_`{|}~</allow-extra-char>
      <allow-group-char required="false"></allow-group-char>
      <deny-old-password include="false">false</deny-old-password>
      <deny-userid include="false">false</deny-userid>
    </check-password>
    <password-cryption-class>jp.co.intra_mart.foundation.security.cryption.standard.StandardCryption</password-cryption-class>
    <return-initial-page>false</return-initial-page>
  </group>
</password-history>

コラム

groupタグは複数設定が行えます。groupタグを複数定義することでテナントごとに個別の設定が可能です。
詳細はリファレンス内の「テナントごとの設定」を参照してください。

コラム

password-history.xmlはpassword-history-config.xsdを参照していないため、タグへのバリデーションは適応されません。
xmlファイル修正時は上記設定例を参照の上、実施してください。

リファレンス

デフォルト設定

タグ名 group-default
パスワード履歴管理機能の標準設定を行います。

【設定項目】

<password-history>
  <group-default accessor-class="StandardPasswordHistoryAccessor">
    ...
  </group-default>
</password-history>

必須項目
複数設定 ×
設定値・設定する内容 パスワード履歴管理機能の標準設定を設定します。
単位・型 なし
省略時のデフォルト値 なし
親タグ password-history

【属性】

属性名 説明 必須 デフォルト値
accessor-class
パスワード履歴管理モジュールの実装クラスを設定します。
jp.co.intra_mart.foundation.security.password.PasswordHistoryAccessor インタフェースを実装している必要があります。
× jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor

テナントごとの設定

タグ名 group
テナントごとに、パスワード履歴管理機能の設定を行います。

【設定項目】

<password-history>
  <group name="secondary" accessor-class="StandardPasswordHistoryAccessor">
    ...
  </group>
</password-history>

必須項目 ×
複数設定
設定値・設定する内容 テナントごとの、パスワード履歴管理機能を設定します。
単位・型 なし
省略時のデフォルト値 なし
親タグ password-history

【属性】

属性名 説明 必須 デフォルト値
name テナントID なし
accessor-class
パスワード履歴管理モジュールの実装クラスを設定します。
jp.co.intra_mart.foundation.security.password.PasswordHistoryAccessor インタフェースを実装している必要があります。
× group-default タグの accessor-class に設定されている値

初回ログイン時パスワード変更

タグ名 change-password-first-login
初期ログイン時にパスワード変更を要求するかどうかを設定します。
ユーザ属性の初回ログイン設定の値を確認して、初回ログイン判定を行います。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <change-password-first-login>true</change-password-first-login>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容
false 初期ログイン時にパスワード変更を要求しません。
true 初期ログイン時にパスワード変更を要求します。
単位・型 真偽値 (true/false)
省略時のデフォルト値
親タグが group-default の場合、true
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

パスワード有効日数

タグ名 password-expire-limit
パスワードの有効日数を設定します。
有効期間を無制限に設定するには、0を設定してください。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <password-expire-limit>0</password-expire-limit>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワードの有効日数を設定します。
単位・型 数値 (0 - )
省略時のデフォルト値
親タグが group-default の場合、0
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

管理するパスワード履歴数

タグ名 password-history-count
パスワードの履歴を管理する世代。
0を設定した場合、履歴管理を行いません。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <password-history-count>0</password-history-count>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 管理するパスワード履歴数を設定します。
単位・型 数値 (0 - )
省略時のデフォルト値
親タグが group-default の場合、0
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

パスワード履歴管理対象外クライアントタイプ

タグ名 deny-client-types
パスワード履歴管理対象とならないクライアントタイプを設定します。
複数設定する場合は、カンマ区切りで設定してください。
パスワード履歴管理対象外のクライアントからログインした場合の動作は以下のとおりです。
  • 初期ログイン時にパスワード変更を要求しません。
  • パスワードの有効日数の超過判定を行いません。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <deny-client-types>sp</deny-client-types>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワード履歴管理対象とならないクライアントタイプを設定します。
単位・型 文字列 (xxxxxx,xxxxxxxx)
省略時のデフォルト値
親タグが group-default の場合、なし
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

パスワード変更画面パス

タグ名 password-expire-page
パスワード変更画面のパスを設定します。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <password-expire-page>/user/password/expire</password-expire-page>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワード変更画面のパスを設定します。
単位・型 文字列 (xxx/xxx/xxx/xxxxx)
省略時のデフォルト値
親タグが group-default の場合、/user/password/expire
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

【属性】

属性名 説明 必須 デフォルト値
client-type
クライアントタイプを設定します。
クライアントタイプ別にパスワード変更画面を設定したい場合に設定してください。
クライアントタイプが設定されていない場合はデフォルトのパスワード変更画面として扱われます。
×
親タグが group-default の場合、なし
親タグが group の場合、group-default タグ内の設定値

パスワード文字列チェック

タグ名 check-password
パスワード文字列に対する有効チェックの内容を設定します。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <check-password enable="true" check-password-class="">
      ...
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワード文字列に対する有効チェックの内容を設定します。
単位・型 なし
省略時のデフォルト値
親タグが group-default の場合、なし
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

【属性】

属性名 説明 必須 デフォルト値
enable パスワード文字列の有効チェックを行うかどうかを設定します。 ×
親タグが group-default の場合、false
親タグが group の場合、group-default タグ内の設定値
check-password-class
Javaインタフェース jp.co.intra_mart.foundation.security.password.PasswordHistoryAccessor を実装したクラスのFQDNを設定してください。
クラスが設定されている場合は、設定されたクラスのcheckPassword()メソッドが実行されます。
×
なし

コラム

check-password-class属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。

パスワード暗号化アルゴリズムクラス

タグ名 password-cryption-class
パスワードの履歴を保管する際に用いられる暗号化アルゴリズムクラス。
パスワードの保存方式が「暗号化」方式である場合に利用可能です。
パスワードの保存方式については「 システム管理者操作ガイド 」-「 パスワード保存方式設定 」を参照してください。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <password-cryption-class>jp.co.intra_mart.foundation.security.cryption.standard.StandardCryption</password-cryption-class>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 jp.co.intra_mart.foundation.security.cryption.Cryption インタフェースを実装したクラスを設定します。
単位・型 文字列 (xxxxxxxxxxxxxx)
省略時のデフォルト値
親タグが group-default の場合、jp.co.intra_mart.foundation.security.cryption.standard.StandardCryption
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

パスワード変更後ログイン画面表示

タグ名 return-initial-page
パスワード変更要求画面よりパスワードを変更した後に、ログイン画面に戻るかどうかを設定します。

【設定項目】

<password-history>
  <group-default accessor-class="jp.co.intra_mart.foundation.security.password.StandardPasswordHistoryAccessor">
    <return-initial-page>false</return-initial-page>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容
false パスワード変更後にユーザの「ホーム」画面を表示します。
true パスワード変更後に「ログイン」画面を表示します。
単位・型 真偽値 (true/false)
省略時のデフォルト値
親タグが group-default の場合、false
親タグが group の場合、group-default タグ内の設定値
親タグ group-default, group

パスワードの長さチェック

タグ名 check-password-length
パスワードの長さ制約に関する設定です。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <check-password-length enable="false" min="0" max="50"/>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワードの長さ制約を設定します。
単位・型 なし
省略時のデフォルト値
親タグが group-default/check-password の場合、なし
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
enable パスワードの長さ制約を行うかどうかを設定します。 ×
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
min パスワードの最小の長さを設定します。最小値は 0 です。 ×
親タグが group-default/check-password の場合、0
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
max パスワードの最大の長さを設定します。最大値は 50 です。 ×
親タグが group-default/check-password の場合、50
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

パスワード利用可能文字(英文字)

タグ名 allow-latin-letters
パスワードに利用できる英文字を設定します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <allow-latin-letters required="false" enable="true">ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz</allow-latin-letters>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワードに利用できる英文字を設定します。
単位・型 文字列 (xxxxxxxxxxxxxx)
省略時のデフォルト値
親タグが group-default/check-password の場合、A-Za-z
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
required
パスワード利用可能文字(英文字)の制約を行うかどうかを設定します。
true の場合は、少なくとも1文字は設定した文字が必要です。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
enable
allow-latin-lettersタグを利用するかどうかを設定します。
false
親タグが group-default/check-password の場合、true
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

enable属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。

パスワード利用可能文字(数字)

タグ名 allow-number
パスワードに利用できる数字を設定します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <allow-number required="false" enable="true">0123456789</allow-number>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワードに利用できる数字を設定します。
単位・型 文字列 (xxxxxxxxxxxxxx)
省略時のデフォルト値
親タグが group-default/check-password の場合、0-9
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
required
パスワード利用可能文字(数字)の制約を行うかどうかを設定します。
true の場合は、少なくとも1文字は設定した文字が必要です。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
enable
allow-numberタグを利用するかどうかを設定します。
false
親タグが group-default/check-password の場合、true
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

enable属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。

パスワード利用可能文字(その他)

タグ名 allow-extra-char
パスワードに利用できるその他の文字を設定します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <allow-extra-char required="false" enable="true">!&quot;#$%&amp;&apos;()+,-./:;&lt;=&gt;?@[\]^_`{|}~</allow-extra-char>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容 パスワードに利用できるその他の文字を設定します。
単位・型 文字列 (xxxxxxxxxxxxxx)
省略時のデフォルト値
親タグが group-default/check-password の場合、_-.+$#!/@
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
required
パスワード利用可能文字(その他)の制約を行うかどうかを設定します。
true の場合は、少なくとも1文字は設定した文字が必要です。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
enable
allow-extra-charタグを利用するかどうかを設定します。
false
親タグが group-default/check-password の場合、true
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

enable属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。

パスワード利用可能文字グループ

タグ名 allow-group-char
パスワードに利用できる文字グループを設定します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <allow-group-char required="false"></allow-group-char>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定
設定値・設定する内容
パスワードに利用できる文字グループを設定します。
複数設定することが可能です。
単位・型 文字列 (xxxxxxxxxxxxxx)
省略時のデフォルト値
なし
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
required
パスワード利用可能文字グループの制約を行うかどうかを設定します。
true の場合は、少なくとも1文字は設定した文字が必要です。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

allow-group-charタグは intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。

パスワード履歴内のパスワードの利用禁止

タグ名 deny-old-password
パスワード履歴に存在するパスワードの利用を禁止します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <deny-old-password include="false">false</deny-old-password>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容
false パスワード履歴に存在するパスワードの利用を許可します。
true パスワード履歴に存在するパスワードの利用を禁止します。
単位・型 真偽値 (true/false)
省略時のデフォルト値
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
include
パスワード履歴に存在するパスワードを含んだパスワードの利用を許可するかどうかを設定します。
true の場合は、パスワード履歴に存在するパスワードを含んだパスワードは利用できません。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

include属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。
パスワードの保存形式が非可逆形式の場合、include属性は利用できません。

ユーザコードパスワードの利用禁止

タグ名 deny-userid
ユーザコードと同じパスワードの利用を禁止します。

【設定項目】

<password-history>
  <group-default>
    <check-password enable="true" check-password-class="">
      <deny-userid include="false">false</deny-userid>
    </check-password>
  </group-default>
</password-history>

必須項目 ×
複数設定 ×
設定値・設定する内容
false ユーザコードと同じパスワードの利用を許可します。
true ユーザコードと同じパスワードの利用を禁止します。
単位・型 真偽値 (true/false)
省略時のデフォルト値
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値
親タグ check-password

【属性】

属性名 説明 必須 デフォルト値
include
ユーザコードを含んだパスワードの利用を許可するかどうかを設定します。
true の場合は、ユーザコードを含んだパスワードは利用できません。
false
親タグが group-default/check-password の場合、false
親タグが group/check-password の場合、group-default/check-password タグ内の設定値

コラム

include属性は intra-mart Accel Platform 2017 Summer(Quadra) 以降で利用できます。