a-blog cms PHP API Reference

TfaAuthResult : string
in package

2段階認証の認証結果

Table of Contents

Cases

DECRYPT_FAILED  = 'decrypt_failed'
INVALID_CODE  = 'invalid_code'
NOT_REGISTERED  = 'not_registered'
SUCCESS  = 'success'

Methods

shouldCountAsLockAttempt()  : bool
この結果を2段階認証の試行ロック(Common::validateLockPost / logLockPost)の カウント対象とすべきか

Cases

Methods

shouldCountAsLockAttempt()

この結果を2段階認証の試行ロック(Common::validateLockPost / logLockPost)の カウント対象とすべきか

public shouldCountAsLockAttempt() : bool

Why not: 呼び出し側で「DECRYPT_FAILED だけ if で除外し、それ以外は else でまとめて 数える」という書き方にすると、将来 case を追加したときに黙って数え忘れる/数えすぎる 回帰を静的にも動的にも検知できない。判定をこの enum 自身の述語として持たせることで、 呼び出し側のコード構造(if/elseの位置)に依存せずテストで固定できるようにする。 対象外リストを明示し、それ以外は数える側にフェイルセーフする設計にしているのは、 将来 case を追加した際に対象外リストの更新を忘れても「数えすぎて誤ロックする」方向 (安全側)に倒れ、「数え忘れて総当たりを許す」方向には倒れないようにするため。 SUCCESS は失敗ではないため対象外。DECRYPT_FAILED は salt ローテーション等の運用障害でも 起こり正規利用者を誤ってロックしてしまうため対象外。

Return values
bool

        
On this page

Search results