問題タブ [google-cloud-armor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-cloud-armor - Google Cloud Armor に recaptcha スコアを解釈させる方法
次の設定で GKE アプリケーションを使用しています。
- フロントアプリの動作
example.com
- バックエンドアプリが動作
api.example.com
Ingress を介してこれらの負荷を公開すると、すべてがクールに見えます。Cloud Armor でアプリケーションを保護したい。サービスにアノテーションを追加しapi
ました。ポリシーに「すべての IP を拒否する」ルールが 1 つしかない場合、バックエンド エンドポイントに到達できず、ルールを「すべての IP を許可する」に変更すると到達できることを確認できます。したがって、GCA 自体は問題なく動作します。
reCaptcha Enterprise を接続して、そのスコアを Google Cloud Armor で解釈しようとしましたが、うまくいきません。次のルールを作成しましたが、追加した値token.recaptcha.score
がまったく解釈されないようです。
したがって、提示された例では、ルールを "> 0.1" のように途方もなく小さくしても、常にブロックされます。フロントX-Recaptcha-Token
はバックエンドに送信するので、すべてを正しく行ったように見えます。
私が確信していないのは、この許可ルールが正しく定義されているかどうかだけです。GCP Logging はポリシーが適用されたことを示していますが、正確にはどのルールかわかりません:
jsonPayload.enforcedSecurityPolicy.priority
フィールドがデフォルトのルールを指していると仮定します。これは、Allow
ルールが機能しないことを意味します。
また、reCaptcha キーは、ドキュメントに従ってGoogle に電子メールで送信することで有効になっています。