我有一个web 2,我想托管在天青应用服务。该服务应该由javascript应用程序调用,因此据我所知,它必须向公众开放(对吗?)
但是,如果我让它完全打开,它就很容易受到DOS的攻击。做这件事的最好方法是什么?
我想到的第一件事是实现一个自定义IP过滤器,它使请求从最后x分钟开始,并让发生次数少于y的请求通过。
还有别的办法吗?有没有什么特别的方法可以不写代码就在天蓝色上做这件事?
,这不是一个宽泛的问题!我想我要问的很清楚!我在Azure上有一个服务,我想保护它不被过度使用。有多宽?!?!
发布于 2016-11-15 10:13:45
如果它是一个公共API (即。移动应用程序会与之交谈的东西),它必须是..。当然是公开的。:)
如果用户在使用API之前必须注册(或者这是一个选项),则可以使用API密钥。这并不能阻止DoS,如果提供给客户端,也不是身份验证的一种形式,但至少您可以快速撤销违规密钥,以在某种程度上减轻DoS。
除此之外,您对DoS的主要关注是应用程序级别的DoS。您应该尽量避免对后端造成压力的API调用,限制响应大小(这可能意味着在客户端上分页)等等。通过在API中完成这些操作,让提供者处理网络级别的内容。
发布于 2016-11-15 10:12:42
默认情况下,azure服务受到DDOS、MITM攻击的保护,所有通信都是通过https和加密的。
就应用程序设计而言,您需要处理以下问题: SQL注入、会话劫持、跨站点脚本编写、应用程序级MITM和应用程序级DDoS。
此外,您还可以使用锡箔安全扫描测试对应用程序服务进行漏洞检查。https://azure.microsoft.com/en-us/blog/web-vulnerability-scanning-for-azure-app-service-powered-by-tinfoil-security/
还可以使用azure管理服务,您可以使用API网关来控制API调用、路由、强制使用配额以及根据API的流量进行节流。
https://azure.microsoft.com/en-in/documentation/articles/api-management-howto-product-with-rules/
https://stackoverflow.com/questions/40606892
复制相似问题