云服务器价格_云数据库_云主机【优惠】最新活动-搜集站云资讯

专属服务器_华为的云相册占内存吗_免费

小七 141 0

SAP云平台API管理提供了许多现成的API安全最佳实践,可以根据您的企业需求进行定制。这些API安全最佳实践包括身份验证和授权的安全策略,流量管理等等。

速率限制或流量管理是控制API端点发送或接收的流量速率的过程。速率限制可以有很多种方式,比如根据给定时间范围内API的点击次数限制调用,限制给定时间范围内突发峰值的调用,限制并发连接太多,限制了对大量数据的调用等。。在SAP云平台API管理中,我们为所有这些用例提供现成的安全策略,如下:

配额策略根据给定时间范围内的调用次数启用速率限制尖峰阻止策略允许对呼叫中的突然尖峰进行速率限制并发速率限制启用对目标端点的并发连接数的速率限制

在本博客中,我们将看到SAP API Management如何通过配额策略解决OWASP访问控制–API速率限制主题。

实际上,API速率限制将防御拒绝服务或暴力攻击。为此,您可以使用峰值停止或并发速率限制策略。但有时API会被非请求请求在较长时间内误用。为了避免这种情况,您可以使用API密钥(请参阅OWASP安全备忘单的"反农耕"部分)和上述配额策略等机制。

配额策略可以限制每个应用程序的API调用量,并在更大的时间范围内处理服务的滥用。

请注意,Divya Mary的博客条目涵盖了中的场景您可以在API级别创建一个速率限制,包括在发生冲突时发回429http状态码。在我们的博客文章中,主要关注每个应用程序的费率限制,即API密钥。

前提条件

SAP云平台API管理租户。

启动API门户

登录到您的SAP云平台API管理帐户(例如https://account.hanatrial.ondemand.com/cockpit).导航到"服务"选项卡,搜索API管理服务磁贴,然后单击打开SAP API管理服务。 单击访问API门户链接打开API门户。

创建API代理

从汉堡包图标导航到定义,然后选择选项卡API并单击创建按钮

为任何端点和示例服务创建新的API代理网址:https://sapes4.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE\u基本/(来自SAP Gateway ES4系统)。代理名称:GatewayServiceQuota标题:网关演示示例服务基本路径:/sap/opu/odata/IWBEP/GWSAMPLE\u BASIC/

单击保存和部署按钮激活API代理。

通过此按钮,我们激活了一个连接到sap网关odata API的API代理https://sapes4.sapdevcenter.com/sap/opu/odata/IWBEP/GWSAMPLE\u基本/公共领域的任何人都可以访问。

更新现有API代理

从汉堡包图标导航到开发菜单,然后选择选项卡API。现在选择每个应用程序应应用API速率限制的API代理。

基于应用程序的配额强制

在深入了解技术细节之前,让我们后退一步,做一些理论。

一旦定义了API代理,就可以在SAP API Management Developer门户上发布它。这是通过"API产品"的概念来实现的,这是一个API包,您希望将其交付给开发人员。这些API产品可以在自助服务的基础上订阅,在这种情况下,开发人员可以获得应用程序的API密钥。此密钥需要为应用程序进行的每个API调用发送。

现在通过向我们的API提供程序添加"验证API密钥"策略,我们不仅可以确保调用程序是合法的应用程序,而且还可以为每个应用程序强制执行配额。这将在配额策略的第二步中完成。

下面是有关如何设置此机制的技术详细信息。

添加验证API密钥策略

在以前创建的API代理中,或在任何其他要实现配额功能的代理中,单击策略链接。

在策略编辑器中,单击编辑,然后将验证API密钥策略添加到ProxyEndpoint预流中(在添加验证API密钥策略之前选择该策略)。

将其命名为"VerifyAPIKey",确保选中了传入请求流并单击"添加"。

单击VerifyAPIKey策略并修改其配置,即应从中读取API密钥的位置。在我们的例子中,我们将从查询参数中读取它。

单击更新并保存。

为了获得API密钥,用于将应用程序链接到API,我们需要创建一个API产品,该产品将由开发人员在开发人员门户中订阅。这就是我们接下来要做的。

创建API产品

在API门户中,单击左侧菜单上的"开发"按钮。

单击"产品"链接,然后单击"创建"。

根据需要命名API产品,并将配额设置为每1分钟10个请求。

单击API链接并添加我们在上面和下面修改的API单击OK。

现在单击Publish,API产品可通过开发者门户获得。

在下一步中,我们将创建一个应用程序,该应用程序将使用该API产品,方法是让开发者订阅并获取API密钥。

在SAP API Management开发者门户中创建一个应用程序

如上所述,在测试API代理之前,我们需要一个API密钥。这是由开发人员通过开发人员门户构建应用程序来完成的。

按照