@PasswordQuality (式言語)

パスワードデータ型フィールドの戻り値の数値を評価します。

注: この関数は R5.0.1 で新しく追加されました。

構文

@PasswordQuality( field_name )

パラメータ

field_name

パスワードデータ型のフィールド名です。暗号化されていないパスワードである必要があります。

戻り値

passwordQuality

数値。パスワードの複雑さのレベルです。数値が大きければ、解読が困難で複雑なパスワードであることを示します。

使用法

この関数は、Web 上で使用できます。

注: @Password 関数または @Hashpassword 関数を使用して暗号化されているフィールドに対し @PasswordQuality 関数を使用すると、暗号化された入力にこの関数を適用することになるため、誤った結果が生成されます。

最初の 2 つの例で、@PasswordQuality が暗号化されているフィールドに適用されると、予期せぬ結果が返されることを説明します。2 番目の 2 つの例では、パスワードを暗号化した場合の @PasswordQuality の正しい使用法を説明します。パスワードの暗号化は文書の QuerySave イベントで扱います。
  1. この例では、プログラマーが、入力確認式でパスワードクオリティをテストされた既存のフォームを修正し、パスワードが暗号化されるようにしました。このプログラマーにより、@Password を使用した入力変換式が追加されました。現状では、空白のパスワードや「password」のようなパスワードクオリティ「3」に相当する単純なパスワードの場合は、@Success が返されます。これはプログラマーの意図するものではありませんでした。

    パスワードの入力フィールド、PW は次のように定義されています。入力変換式: @Password(PW) 入力確認式: @If(@PasswordQuality(PW)<6;@Failure("Password not complex enough"); @Success)

  2. エージェントはすべてのユーザー文書 (@PasswordQuality(HttpPassword)<8) を選択します。ユーザー文書の HttpPassword フィールドが暗号化されているため、どの文書も選択されません。
  3. この例では、パスワードフィールドを持つフォームが繰り返し保存されます。QuerySave イベントで、十分な複雑さを持つ、暗号化されていないパスワードを暗号化します。ただし、失敗したパスワードや既に暗号化されているパスワードはそのままにします。

    パスワードの入力フィールド、PW は次のように定義されています。入力変換式: なし 入力確認式: @If(@PasswordQuality(PW)>7;@Success;@Failure("Password not complex enough")) QuerySave イベント: FIELD PW:=@If((@PasswordQuality(PW)>7 & @PasswordQuality(PW)<30);@Password(PW);PW) パスワード「password」を [PW] フィールドに入力すると、入力確認が失敗し、「Password not complex enough」が返されます。パスワード「a2R5j4K9」が入力された場合は、文書は、[PW] フィールドのパスワードを暗号化した値とともに保存されます。

  4. パスワードの入力フィールド、PW は次のように定義されています。入力変換式: なし 入力確認式: @If(@PasswordQuality(PW)<12;@Failure("Password not complex enough"); @Success) QuerySave イベント: Dim doc As NotesDocument Set doc=Source.Document res=Evaluate(|@setfield("PW";@Password("PW"))|,doc) Call doc.save(True,True) パスワード「password」を [PW] フィールドに入力すると、入力確認が失敗し、「Password not complex enough」が返されます。パスワード「a2R5j4K9」が入力された場合は、文書は、[PW] フィールドのパスワードを暗号化した値とともに保存されます。

クロスリファレンス

LotusScript® NotesRegistration クラスの MinPasswordLength プロパティ

Java™ Registration クラスの MinPasswordLength プロパティ