gpt4 book ai didi

amazon-web-services - AWS API 网关中的 OpenID 身份验证

转载 作者:行者123 更新时间:2023-12-05 04:06:40 25 4
gpt4 key购买 nike

我使用触发 lambda 函数的 AWS API 网关创建了一个 API。现在我想限制对此 API 的访问。我拥有一个 OpenID 连接身份提供商。

我想要求人们在访问 API 之前通过我的 OpenID 身份提供商进行身份验证。最好的方法是什么?显然,我的 API 需要一个授权方。我阅读了很多文档,并从中提到了here ,这似乎可以通过 amazon cognito 实现。然而,here我只能找到一种使用 Cognito 用户池的方法,而我想使用 Cognito 身份池。

我想要典型的身份验证场景,例如用户调用 api,被重定向到我的 openid id 提供商,登录,然后可以访问我的 api(它提供 html,所以所有这些都将在网络浏览器中进行)。

这实际上可以通过 cognito 实现,还是我需要编写自定义 lambda 授权方?如果是这样,是否有关于编写使用 openid 的授权方 lambda 的文档,最好是在 .NET 中?

最佳答案

您正在混合身份验证和授权。

Cognito 的联合身份提供者:

您可以使用 OpenID 联合身份提供商进行身份验证。

下面的文档提供了如何配置它,

https://docs.aws.amazon.com/cognito/latest/developerguide/authentication-flow.html

一旦通过身份验证,您就可以创建一个签名 URL 来保护您想要允许的 URL 的 Assets 。

创建签名 URL:

以下文档提供者介绍了如何使用 C# 创建签名 URL。

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/CreateSignatureInCSharp.html

自定义授权方:

github 上的以下提交显示了 C# 自定义授权器的示例实现。

https://github.com/awslabs/aws-apigateway-lambda-authorizer-blueprints/pull/13/commits/79d75fb7c5ee4f29fa06fd2ec28c704224cf8a7a

希望对您有所帮助。

关于amazon-web-services - AWS API 网关中的 OpenID 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49651786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com