監控 reCAPTCHA 指標
本文說明 Identity Platform 與 reCAPTCHA Enterprise API 整合後,Identity Platform 會發出的 reCAPTCHA 指標,以及如何透過 Cloud Monitoring 查看這些指標。
reCAPTCHA 指標
設定 Identity Platform 與 reCAPTCHA Enterprise API 的整合,並視需要啟用 reCAPTCHA SMS defense後,您就可以監控專案發出的 reCAPTCHA 指標,確保驗證流程受到保護。如果 reCAPTCHA 金鑰佈建失敗,或是未建立必要的服務帳戶,reCAPTCHA 驗證就無法啟用。
如果您已在稽核模式下啟用 reCAPTCHA 機器人防護功能或 reCAPTCHA SMS defense,監控 reCAPTCHA 指標有助於判斷是否可啟用強制執行模式。啟用強制執行功能前,請考量下列事項:
- 如果近期的大多數要求都有有效的符記,且
PASSED
與FAILED_AUDIT
或FAILED_ENFORCE
判定結果的比例對您的業務而言是可接受的,請考慮啟用強制執行功能。 - 如果近期的大部分要求都來自過時的用戶端,建議您等待更多使用者更新應用程式,再啟用強制執行機制。強制將 Identity Platform 與 reCAPTCHA Enterprise API 整合,會導致未與 reCAPTCHA 整合的舊版應用程式無法正常運作。
為確保整合功能正常運作,您可以檢查專案向 Cloud Monitoring 發出的下列指標。
identitytoolkit.googleapis.com/recaptcha/verdict_count
這項指標會追蹤 reCAPTCHA 傳回的不同判定結果。如果有符記,系統就會產生判定結果。您可以篩選下列判定結果:
PASSED
:表示在啟用強制執行功能時,系統允許特定要求。FAILED_AUDIT
:表示在啟用 reCAPTCHA 稽核模式時,系統拒絕特定要求。FAILED_ENFORCE
:表示在啟用 reCAPTCHA 強制執行模式時,系統拒絕特定要求。CLIENT_TYPE_MISSING
:指出在啟用 reCAPTCHA 強制執行功能時,指定要求缺少用戶端類型。這類錯誤通常會發生在使用不支援 reCAPTCHA 的舊版用戶端 SDK 傳送要求時。KEYS_MISSING
:表示啟用 reCAPTCHA 強制執行功能時,Identity Platform 無法擷取有效的 reCAPTCHA 金鑰,因此無法驗證特定要求。
如要修改分數範圍,以便變更通過/失敗判定結果的比例,請參閱「啟用 reCAPTCHA 機器人防護」。
identitytoolkit.googleapis.com/recaptcha/token_count
這個指標會追蹤 Identity Platform 後端收到的 reCAPTCHA 權杖數量和狀態。您可以依下列狀態進行篩選:
VALID
:表示傳入的 reCAPTCHA 權杖有效。EXPIRED
:表示傳入的 reCAPTCHA 權杖已過期。過期的權杖可能表示客戶端網路發生問題或遭到濫用。DUPLICATE
:表示傳入的 reCAPTCHA 權杖是重複的。重複的符記可能表示客戶端網路問題或濫用行為。INVALID
:表示傳入的 reCAPTCHA 權杖無效。無效的權杖可能表示濫用行為。MISSING
:表示 reCAPTCHA 權杖不在指定要求中。如果權杖遺失,可能表示用戶端應用程式過舊。UNCHECKED
:表示 reCAPTCHA 權杖因CLIENT_TYPE_MISSING
或KEYS_MISSING
判定結果而未經過檢查。
如果應用程式已成功推出給使用者,您會看到含有有效權杖的流量。有效權杖的數量可能會與使用更新版應用程式的使用者人數成正比。
identitytoolkit.googleapis.com/recaptcha/risk_scores
這項指標會追蹤 reCAPTCHA 分數分布情形。這有助您為機器人防護設定定義最佳分數範圍。
identitytoolkit.googleapis.com/recaptcha/sms_tf_risk_scores
這個指標會追蹤特定 Identity Platform 專案的 reCAPTCHA SMS defense 風險分數分布情形。這有助您為 reCAPTCHA SMS defense 設定定義最佳分數範圍。
查看 reCAPTCHA 指標
如要透過 Cloud Monitoring 查看 reCAPTCHA 指標,請按照下列步驟操作:
前往 Google Cloud 控制台的「Metrics Explorer」頁面。
在「選取指標」中,輸入「Identity Toolkit 租用戶」。如果您使用多租戶功能,只要將
tenant_name
空白,即可查看每個租戶和父專案的指標。