gpt4 book ai didi

c# - 如何在没有身份验证和授权方法的情况下保护公共(public)端点

转载 作者:太空宇宙 更新时间:2023-11-03 22:32:28 26 4
gpt4 key购买 nike

如何防止在 Web 应用上下文之外使用公共(public)端点?

我有一个用 ReactJS 开发的 Web 应用程序,它使用一个用 C# 和 Net Core 2.0 开发的公共(public) API。一些端点是公共(public)的,这意味着这些端点不使用某种身份验证或授权方法。那么,我如何保护这些公共(public)端点以防止在我的 Web 应用程序上下文之外使用它们,例如,不使用 Postman 使用端点并防止被机器人攻击。

Cors 启用:起源 -> “”, header -> “” 和方法 -> “*”。该应用程序可以在世界任何地方使用。

一个伙伴告诉我一个疯狂的想法,当公共(public)端点被消费时,不管是如何或什么,从端点重定向到一个带有验证码的网页,端点等待直到验证码成功,然后它会继续与交易。

最佳答案

如果公共(public) API 不使用任何身份验证和授权,您将无法控制其使用(IP 范围等类似防火墙的功能除外)。

Captcha 重定向不会真正帮助您:您失去了在您的应用程序中无缝使用 API 的可能性:只需在浏览器中单击“开发人员工具”,每个人都可以按字节调用它与从您的应用程序使用时相同的字节方式。

很可能最简单的解决方案是创建某种身份验证和身份验证:针对无法解决的问题(根据定义是不安全的)寻求解决方案将花费您大量的时间、头痛和安全漏洞,而不仅仅是正确地做。

关于c# - 如何在没有身份验证和授权方法的情况下保护公共(public)端点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56782160/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com