Forms spam protection

Cloudflare TurnstileGoogle reCAPTCHA v3 保护网站表单免受垃圾邮件和滥用。它们试图利用基于遥测和访客行为的非交互式挑战,来区分人工和机器提交。

小技巧

建议使用**Cloudflare Turnstile**,因为如果自动检查失败,可以添加交互式检查。此外,Google reCAPTCHA v3 的限制是`每个域每月 100 万次评估 <https://developers.google.com/recaptcha/docs/faq#are-there-any-qps-or-daily-limits-on-my-use-of-recaptcha>`_。

注解

All pages using the Form, Newsletter Block, Newsletter Popup snippets, and the eCommerce Extra Step During Checkout form are protected by both tools.

Cloudflare Turnstile configuration

On Cloudflare

  • 创建 <https://dash.cloudflare.com/sign-up>`_ Cloudflare 账户或使用现有账户,然后登录 <https://dash.cloudflare.com/login>`_。

  • 在仪表板导航侧边栏上,单击 Turnstile

  • On the Turnstile Sites page, click Add Site.

  • Add a Site name to identify it easily.

  • Enter or select the website’s Domain (e.g., example.com or subdomain.example.com).

  • Select a Widget Mode:

    • The Managed mode is recommended, as visitors can be prompted to check a box confirming they are human if deemed necessary by Turnstile.

      Cloudflare Turnstile human verification widget
    • 非交互式隐身 模式下,不会提示访问者进行交互。在 非交互式 模式下,可以显示加载窗口小部件,以警告访问者 Turnstile 会保护表单;但是,Odoo 不支持该窗口小部件。

      注解

      如果 Turnstile 检查失败,访客将无法提交表单,并显示以下错误消息:

      Cloudflare Turnstile 验证错误信息
  • 点击:guilabel:创建

将网站添加到 Cloudflare Turnstile

然后就会显示生成的密钥。为方便起见,页面保持打开状态,因为接下来需要在 Odoo 中复制密钥。

On Odoo

  • 从数据库仪表板,单击 设置。在 整合 下,启用 Cloudflare Turnstile,然后单击 保存

  • 打开 Cloudflare Turnstile 页面,复制 网站密钥 并将其粘贴到 Odoo 中的 CF 网站密钥 字段。

  • 打开 Cloudflare Turnstile 页面,复制 密钥 并将其粘贴到 Odoo 中的 CF 密钥 字段。

  • 点击:guilabel:保存

小技巧

在 Cloudflare 账户上导航至 Turnstile,查看解决率并访问更多设置。

reCAPTCHA v3 配置

On Google

打开 the reCAPTCHA 网站注册页面。登录或创建 Google 账户(如有必要)。

在网站注册页面:

  • 为网站添加 标签

  • Leave the reCAPTCHA type on Score based (v3).

  • 输入一个或多个 :guilabel:`域名`(例如 example.comsubdomain.example.com)。

  • Google Cloud Platform 下,如果已使用登录的 Google 帐户创建了项目,则会自动选择一个项目。如果没有,则会自动创建一个。单击 Google Cloud Platform 可自行选择项目或重命名自动创建的项目。

  • 同意服务条款。

  • 点击:guilabel:提交

reCAPTCHA 网站注册示例

然后会显示一个包含生成密钥的新页面。为方便起见,请将其打开,因为接下来需要将密钥复制到 Odoo 中。

On Odoo

  • 从数据库仪表板,单击 设置。在 整合 下,根据需要启用 reCAPTCHA

    警告

    请勿禁用 reCAPTCHA 功能或卸载 Google reCAPTCHA integration 模块,因为许多其他模块也会被移除。

  • 打开 Google reCAPTCHA 页面,复制 网站密钥 并粘贴到 Odoo 中的 网站密钥 字段。

  • 打开 Google reCAPTCHA 页面,复制 密匙 并粘贴到 Odoo 中的 密匙 字段。

  • 必要时更改默认的 最低分数 (0.50),使用介于`1.00`和`0.00`之间的值。阈值越高,通过 reCAPTCHA 就越困难,反之亦然。

  • 点击:guilabel:保存

您可以通知访客,reCAPTCHA 对表单进行了保护。为此,请打开网站编辑器并导航至表单。然后,单击表单上的某处,在右侧边栏的 自定义 选项卡上,切换 显示 reCAPTCHA 政策,该政策位于 表单 部分下。

表单上显示的 reCAPTCHA 政策信息

注解

如果 reCAPTCHA 检查失败,则会显示以下错误信息:

Google reCAPTCHA 验证错误信息

小技巧

谷歌的 reCAPTCHA 管理页面 <https://www.google.com/recaptcha/admin/>`_ 上提供了分析和其他设置。例如,如果谷歌在您的网站上检测到可疑流量,您可以收到电子邮件提醒,或查看可疑请求的百分比,这可以帮助您确定正确的最低分数。