【发布时间】:2017-12-23 01:53:05
【问题描述】:
是否可以使用 Amazon cognito 为 AWS 资源以外的资源提供访问控制?假设我有一个必须受访问控制的 REST API 端点。如何使用 Amazon cognito 为这些端点提供授权?
【问题讨论】:
-
如果您将 API 网关用于您的 REST API,您可以使用授权者通过用户池授权者或自定义授权者来执行此操作
标签: amazon-cognito
是否可以使用 Amazon cognito 为 AWS 资源以外的资源提供访问控制?假设我有一个必须受访问控制的 REST API 端点。如何使用 Amazon cognito 为这些端点提供授权?
【问题讨论】:
标签: amazon-cognito
有两种类型的 Cognito 服务可用,即 AWS Cognito UserPools 和 AWS Cognito Federated Identities。
AWS Cognito UserPools 是一个身份提供商,支持对 AWS 内部或外部的任何应用程序进行身份验证。
假设我有一个必须访问的 REST API 端点 受控。如何使用这些端点为这些端点提供授权 亚马逊认知?
您可以将 AWS Cognito UserPools 配置为发出一个名为 id_token(如果指定了 openid 范围)的 JWT 令牌,该令牌可以在内部或外部服务中进行验证。有关验证 JWT 令牌的更多详细信息,请参阅 Using ID Tokens and Access Tokens in your Web APIs。
但是,AWS Cognito 联合身份可以将 AWS 资源访问联合到外部应用程序。这可能不适合您的用例。
【讨论】:
Cognito 联合身份服务可以为您的用户创建唯一身份并将他们与身份提供商联合,使用身份,您可以获得临时的、有限权限的 AWS 凭证以与 Amazon Cognito Sync 同步数据,或直接访问其他 AWS 服务。 欲了解更多信息,请参阅:http://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html
因此,Cognito 联合身份服务不提供对非 AWS 资源的访问控制。
【讨论】: