この章には次のトピックが含まれます:
WebLogic認証プロバイダ
SQL認証プロバイダ
LDAP認証プロバイダ
Oracle Internet Directory認証プロバイダ
Oracle Virtual Directory認証プロバイダ
Active Directory認証プロバイダ
ODSEE認証プロバイダ
Novell認証プロバイダ
Open LDAP認証プロバイダ
WebLogic Server管理コンソールでのパスワード検証プロバイダの構成については、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのパスワード検証プロバイダの構成に関する項を参照してください。
ノート:
パスワードには最初の文字として中カッコ("{")を含めることができません。表17-1 LDAP認証プロバイダとの併用時にパスワード検証プロバイダに要求される追加パスワード作成ルール
| LDAP認証プロバイダ | 追加パスワード作成要件 |
|---|---|
|
パスワード内の文字のうち、1文字以上は数字にする必要があります。 |
|
パスワード内の文字のうち、1文字以上はアルファベット以外の文字にする必要があります。たとえば、数字、アスタリスク(*)、またはシャープ記号(#)など。 |
パスワード検証プロバイダでは、次のようなパスワード構成ルールをオプションで構成できます。
ユーザー名のポリシー — ユーザー名で構成されるパスワードやユーザー名を含むパスワード、あるいはユーザー名を逆にしたパスワードかどうかを判断するルール
パスワード文字長のポリシー — パスワードの最小文字数または最大文字数(構成ルールで最小長と最大長の両方を指定可能)のルール
文字のポリシー - パスワードに次の文字が含まれているかどうかを判断するポリシー
数字
小文字のアルファベット
大文字のアルファベット
アルファベットと数字以外の文字
パスワード検証プロバイダに構成可能な特定の構成ルールの詳細(本番環境にお薦めするルールの設定を含む)は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの「システム・パスワード検証プロバイダ: プロバイダ固有」を参照してください。
ノート:
パスワード構成ルールの設定は、総当たりのパスワード攻撃からWebLogic Serverを保護する手段の1つに過ぎません。ユーザー・アカウントを保護するためには、ユーザー・ロックアウトも構成する必要があります。ユーザー・ロックアウトでは、特定の時間内に間違ったパスワードを入力した回数が上限値を超えると、そのユーザーのアカウントがロックアウトされます。「ユーザー・アカウントの保護」を参照してください。
デフォルトでは、WebLogic認証プロバイダには8文字以上のパスワード(少なくとも1つはアルファベット以外)が必要になります。しかし、この最小パスワード文字数はカスタマイズできます。WebLogic認証プロバイダとパスワード検証プロバイダが同じセキュリティ・レルム内に構成されている場合は、WebLogic認証プロバイダの最小パスワード文字数に満たないパスワードを作成しようとするとエラーが生成されます。たとえば、WebLogic Server管理コンソールに次のようなメッセージが表示されます。
Error [Security:090285]password must be at least 8 characters long Error Errors must be corrected before proceeding.
最小パスワード文字数が満たされなかったためにWebLogic認証プロバイダによってパスワードが拒否された場合、パスワード検証プロバイダは呼び出されません。パスワード検証プロバイダとWebLogic認証プロバイダが常に併用されるようにするには、必ず両方のプロバイダに同じ最小パスワード文字数を設定する必要があります。
WebLogic認証プロバイダの最小パスワード文字数は、WebLogic Server管理コンソールを使用して次のステップで設定できます。
パスワード検証プロバイダで最小パスワード文字数を設定する方法については、「WLSTを使用したパスワード検証プロバイダの作成と構成」を参照してください。
SystemPasswordValidatorMBeanに対する操作を実行します。パスワード検証プロバイダは、1つのWLSTスクリプトで作成および構成できますが、これを複数のスクリプトに分けて別々に実行することも可能です。次のトピックでは、WLSTのサンプル・コードに基づいてこれらの方法を説明します。
パスワード検証プロバイダは、新しいドメインを作成するとセキュリティ・レルムに自動的に作成されます。ただし、例17-1に示すように、WLSTを使用して作成することもできます。このコードによって、次の操作が実行されます。
例17-1 システム・パスワード検証プロバイダの作成
edit()
startEdit()
realm = cmo.getSecurityConfiguration().getDefaultRealm()
pwdvalidator = realm.lookupPasswordValidator('SystemPasswordValidator')
if pwdvalidator:
print 'Password Validator provider is already created'
else:
# Create SystemPasswordValidator
syspwdValidator = realm.createPasswordValidator('SystemPasswordValidator',
'com.bea.security.providers.authentication.passwordvalidator.SystemPasswordValidator')
print "--- Creation of System Password Validator succeeded!"
save()
activate()
次の例は、パスワード検証プロバイダの構成ルールを設定するWLSTコードを示しています。このスクリプトによって設定されるルール属性の詳細は、Oracle WebLogic Server MBeanリファレンスのSystemPasswordValidatorMBeanに関する説明を参照してください。
edit()
startEdit()
# Configure SystemPasswordValidator
try:
pwdvalidator.setMinPasswordLength(8)
pwdvalidator.setMaxPasswordLength(12)
pwdvalidator.setMaxConsecutiveCharacters(3)
pwdvalidator.setMaxInstancesOfAnyCharacter(4)
pwdvalidator.setMinAlphabeticCharacters(1)
pwdvalidator.setMinNumericCharacters(1)
pwdvalidator.setMinLowercaseCharacters(1)
pwdvalidator.setMinUppercaseCharacters(1)
pwdvalidator.setMinNonAlphanumericCharacters(1)
pwdvalidator.setMinNumericOrSpecialCharacters(1)
pwdvalidator.setRejectEqualOrContainUsername(true)
pwdvalidator.setRejectEqualOrContainReverseUsername(true)
print " --- Configuration of SystemPasswordValidator complete ---"
except Exception,e:
print e
save()
activate()