我在Angular中有一个单页应用程序,一个带有Lambda的API网关用于后端服务,Cognito用户池用于身份验证和授权。
对某些API终结点的访问取决于用户角色。您可以使用(执行API invoke for the Api Gateway资源)策略将IAM角色附加到组。
但是,在调用API之前,使用Cognito作为API Gateway的Authorizer仅检查用户是否经过了身份验证(通过在Authorization头中传递ID令牌,在成功登录后,此令牌将从Cognito用户池返回)。用户所在的组不会被用来检查它所在的组以及它所拥有的IAM权限。
有没有一个好的方法,授权我的web用
我使用WSO2 IS (5.11.0)作为APIM4.0.0的密钥管理器。我已经发布了一个graphql API,它由作用域(比如基于名为“test_scope”的角色的“test”)保护。我已经订阅了带有默认应用程序的API,并且还生成了密钥。当我使用作用域('test_scope')生成访问令牌并调用安全的API时,即使没有将所需的角色('test')分配给用户,我也得到了有效的响应。下面是我正在使用的curl命令。
我正在尝试将wso2 am (存储和发布组件)与外部IdP集成,以启用单点登录。因此,我使用WSO2作为这方面的桥梁。文档说我们应该共享WSO2 AM和用户存储(我知道存储或发布者需要一些特定的角色才能访问),但这对共享用户数据存储没有意义,如果是这样的话,使用外部存储的好处是集中和处理身份验证。我们可以通过SAML响应传递store和publisher所需的角色吗?
我有个问题。我的实例中有一个域用户用户,它可以访问某些数据库。我希望更改该登录的默认架构。当我在数据库中创建一些测试登录名和用户时,我可以这样做,但对于我的Windows用户,我不能这样做:
ALTER USER [MFG\giorgi.nakeuri] WITH DEFAULT_SCHEMA=[TBBS]
...results:
无法更改用户'MFG\giorgi.nakeuri',因为它不存在或您没有权限。
但当我试图加入它时:
CREATE USER [MFG\giorgi.nakeuri] FOR LOGIN [MFG\giorgi.nakeuri]
我得到:
该登录名