如何在可部署的多域解决方案中实施 reCAPTCHA? (并非设定清单)

问题描述 投票:0回答:1

我之所以联系您,是因为 Google Pay API 团队向我发送了您的信息。我当前的任务是设置 reCAPTCHA 以防止商家卡测试攻击。

我不确定这是否确实是一个与

recaptcha-enterprise
相关的问题,或者我是否只是因为我的帐户过去设置了测试商家而被转发到该标签。

这里有:

开发了一个 API 和一个可部署的解决方案,以 WordPress 插件的形式呈现,充当 WooCommerce 支付网关。 用户可以通过支付网关中的 iframe 输入卡的详细信息,然后在将卡输入表单之前对卡进行标记。 此外,我们还提供 Google Pay 作为替代方案,这还涉及在提交表单之前对卡进行标记化。

当前的挑战: 我正在努力解决的情况是这样的:我们的可部署解决方案,特别是 WordPress 插件,使问题变得复杂。为了遵守标准的 reCAPTCHA 集成(必须预先选择一个域以将 reCAPTCHA 列入白名单才能使用 API 密钥),我们必须在一天中的不同时间不断添加大量域地址。虽然我们可以处理前端(我们的域:*.solutionbackenddomainhere.com)和服务器到服务器的交互,但满足 reCAPTCHA 的特定域要求会带来不确定性。

寻求解决方案: 我相信有一个安全的解决方法,即使它需要我们付出相当大的努力来实施。

重要注意事项: 当我们处理经过身份验证的 API 调用时(即需要 reCAPTCHA 时),它们始终与集成相关联。这意味着我们甚至可以从我们的后端获得有关原始域的信息。

我非常感谢您提供的任何见解或建议来阐明此事!

我查看了记录的 reCAPTCHA 要求,并且在过去 3 年里一直致力于此集成 + API。

我不想通配符 API 密钥被任何域窃取和使用,并且我找不到如何以编程方式添加域。

recaptcha recaptcha-enterprise
1个回答
0
投票

是的,您应该为此使用 reCAPTCHA Enterprise。对于以下详细信息,我将参考 gRPC 客户端库文档,但如果您与 reCAPTCHA Enterprise API 交互的方式是这样,则还有 REST 类似文档。

以编程方式设置域: RecaptchaEnterpriseService 具有

CreateKey
UpdateKey
(以及其他密钥管理方法)。您可以使用 key.web_settings.allowed_domains 将给定 reCAPTCHA
key
的域列入白名单。

为了专门防止刷卡攻击和欺诈企图,我建议阅读https://cloud.google.com/recaptcha-enterprise/docs/fraud-prevention

© www.soinside.com 2019 - 2024. All rights reserved.