AWS Java SDK用于服务以使用Cognito用户池为Oauth客户端凭据流认证提供服务?

问题描述 投票:0回答:1

情况:

我有运行java后台进程服务,需要访问安全的REST API端点。

API端点是使用无服务器框架在Amazon API Gateway后面运行的AWS lambda函数。它使用Amazon Cognito用户池授权程序进行保护。

我为我的Java后台服务创建了一个App Client,它附加到用户池。

我已成功检索客户端身份验证令牌,并使用cURL和HttpClient访问API端点。

题:

AWS Java SDK(v1或v2)中是否提供此功能?

我一直在浏览SDK文档,到目前为止一无所获。有没有我错过或找不到的东西?或者这是目前还没有?

java amazon-web-services aws-sdk amazon-cognito
1个回答
1
投票

对于客户端凭据身份验证流,Cognito的AWS Java SDK(任何版本)中没有原始API调用。但是,您可以手动编写自己的逻辑来实现此流程,因为客户端凭据(机器到机器流程)中涉及的步骤序列可以使用vanilla Java完成。此流程需要向Cognito的OAuth 2.0 TOKEN端点[a]发出POST请求。由于此流程本质上需要端点请求,因此我认为Cognito开发人员不会开发可访问的API来实现流程。

有关更多详细信息,我请求您查看此官方文档[b],以及此非AWS发布的教程[c]。

References

[一个]。 https://docs.aws.amazon.com/cognito/latest/developerguide/token-endpoint.html

并[b]。 https://aws.amazon.com/blogs/mobile/understanding-amazon-cognito-user-pool-oauth-2-0-grants/

[C]。 https://lobster1234.github.io/2018/05/31/server-to-server-auth-with-amazon-cognito/

© www.soinside.com 2019 - 2024. All rights reserved.