0

我们希望用 wso2 替换现有的 API 管理器,另一个平台的功能之一是我们可以在运行时识别 API 的“用户”并进行节流工作。

“用户”没有被 OAuth 识别,而是通过 API 进行身份验证并返回会话 ID(因此他们从未在“商店”注册)。然后使用此会话 ID 在 API Manager 上设置限制。此外,另一个工具具有查找登录用户并在节流中使用该 ID 的代码。因此,如果用户每小时尝试登录太多次,API 管理器除了每小时对登录用户的太多请求外,还会阻止该请求。登录尝试、API 调用等的组合被汇总到油门中。(所有这些都是多年前由他们的服务团队实施的)

我们需要这个的主要原因是我们不想强迫我们的老客户立即使用 OAuth,而是想要更多的可见性、报告和限制。

关于如何用 wso2 做到这一点的想法?我看到我们可以在哪里将我们自己的处理程序添加到 API 以找出会话 ID、登录 ID 等,但我看不到在哪里创建执行限制的逻辑。

谢谢,

克里斯

4

1 回答 1

0

登录 Carbon 并编辑 tiers.xml ( /_system/governance/apimgt/applicationdata/tiers.xml)。您可以找到该部分 <throttle:ID throttle:type="ROLE">Unauthenticated</throttle:ID>

于 2013-09-30T02:04:57.110 回答