【问题标题】:Auth strategy for AWS API GatewayAWS API Gateway 的身份验证策略
【发布时间】:2019-12-14 05:00:49
【问题描述】:

我正在尝试根据我的用户的 Spotify 帐户对其进行身份验证。但我对 AWS 服务还很陌生,我不确定应该使用哪一个,无论是 Cognito、自定义身份验证 lambda 函数还是任何其他服务。

【问题讨论】:

    标签: amazon-web-services aws-lambda aws-api-gateway amazon-cognito spotify


    【解决方案1】:

    据我了解,Spotify 为外部应用程序开发人员提供了符合 RFC 6749 [1] 的 OAuth 2.0 端点。由于您希望基于 OAuth 2.0 协议验证您的用户,请注意 OAuth 主要不是一种验证协议 [2]。 这就是 Spotify 在其文档中将其称为授权指南 [3] 的原因。

    AWS Cognito 不支持 OAuth 2.0,因为它旨在解决身份验证问题。 [4]
    它支持 OpenID Connect (OIDC)。有文章解释了 OIDC 和 OAuth 之间的区别,例如[5]。

    如果您仍然想在您的 API 网关中使用 OAuth 令牌,另一个 SO 线程 [4] 提到您可以通过使用 自定义授权器 [6][7] 来做到这一点。您可以使用令牌访问 Spotify 后端,但我不确定您是否可以直接验证它。由于上述 AuthZ 与 AuthN 的原因,我对此表示怀疑。

    参考文献

    [1]https://www.rfc-editor.org/rfc/rfc6749#section-4.1
    [2]https://oauth.net/articles/authentication/
    [3]https://developer.spotify.com/documentation/general/guides/authorization-guide/
    [4]https://stackoverflow.com/a/33686216/10473469
    [5]https://medium.com/@abstarreveld/oauth-and-openid-explained-with-real-life-examples-bf40daa8049f
    [6]https://aws.amazon.com/de/blogs/compute/introducing-custom-authorizers-in-amazon-api-gateway/
    [7]https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-use-lambda-authorizer.html

    【讨论】:

      猜你喜欢
      • 2016-08-20
      • 2020-01-05
      • 2018-01-09
      • 2016-03-25
      • 2019-11-18
      • 2020-02-25
      • 2020-06-08
      • 2016-01-09
      • 2020-09-18
      相关资源
      最近更新 更多