在API网关中控制调用Rest API的访问权限

0

【以下的问题经过翻译处理】 我有几个API网关资源,我希望其他服务能够调用它们。假设我有这两个端点: "/tasks" 和 "/setting"。我的客户端是一些服务,它们像以下请求一样调用这些Rest API:(它是用JavaScript编写的,但它们可以使用任何其他编程语言,但不能使用AWS SDK)

fetch('.../tasks') .then((tasks) => { console.log('Tasks:', tasks) });

当一个服务发送一个请求到 "/tasks" 时,我需要检查客户端的权限。如果它没有所需的许可证,我将返回403作为响应。我想知道实现它的最佳方法是什么?我应该使用与身份池集成的AWS Cognito用户池还是自定义授权者?如果我的问题不够清楚,请评论一下,我会提供更多信息。我希望有相关经验的人能够帮助我。

profile picture
EXPERTE
gefragt vor 6 Monaten12 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 当您在池中定义应用程序客户端设置时,您可以定义允许客户端的范围。 您为资源定义的范围应显示在Allowed Custom Scopes"下。 在这种情况下,客户端将无法访问超出您定义的范围。 他们可以要求它,但他们不会得到它。 知识中心还发布了这篇文章,更好地解释了端到端的过程 https://aws.amazon.com/premiumsupport/knowledge-center/cognito-custom-scopes-api-gateway/

profile picture
EXPERTE
beantwortet vor 6 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen