比较来自REST API URI的tenantId与JWT令牌中的值的最佳方法



在我们的多租户应用程序中,我们的大多数端点都以/tenants/:tenantId为前缀。在所有这些端点中,我们最终调用一个方法,将URI中的tenantId与JWT令牌中的tenantId进行比较。

我们正在使用Cognito, API网关和lambda函数。除了从大多数端点调用checkTenantMatch()方法之外,集中检查此问题的最佳位置是什么?

您可以在API网关中实现这样的检查(如果可能的话),以拒绝没有匹配值的早期请求。这将为您的服务节省一些流量。尽管如此,您的api仍然应该执行这样的检查。这样做是为了防止有人设法越过您的网关并直接调用api。这也可以防止来自组织内部的任何恶意行为。

您也可以考虑从URL中完全删除tenantId。然后api将从JWT获取值。这样你就可以确保没有人可以滥用它。

相关内容

  • 没有找到相关文章

最新更新