我有AWS K8s集群(EKS),我希望使用API网关来保护端点,并将授权逻辑与微服务分开。我需要有两个身份验证模式:
API网关与K8s集群通过ALB进位控制器进行集成。看上去很好。那我需要验证一下。AWS提供认知服务,作为管理用户的服务,以及拥有自己的身份提供者的可能性。我知道我们可以将API网关授权器与认知技术集成在一起,但我无法理解以下内容:
发布于 2020-09-30 06:24:19
例如,如何将认知与已经存在的LDAP集成起来?(SAML?)
使用带有SAML IDP的认知用户池。https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-saml-idp.html
2我可以使用我自己已经创建的OAuth2身份验证端点吗?
是的,使用经过身份验证的开发人员身份标识池。从现有用户数据库进行身份验证的用户将通过假设身份池的经过身份验证的IAM角色,在该角色中将访问级别设置为AWS资源,从而得到身份池的授权。https://docs.aws.amazon.com/cognito/latest/developerguide/developer-authenticated-identities.html
3如何使用登录/密码进行身份验证并使用API gateway+Cognito检索JWT?
实现这一目标的最佳方法是在API网关中实现一个使用认知用户池的Lambda授权器。然后,您将能够在Lambda授权器中获得JWT令牌,授权程序中的声明也将在集成请求vtl中可用,并可以使用$context访问。即$context.authorizer.claims.sub https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html
https://stackoverflow.com/questions/64122538
复制相似问题