对于通过web浏览器通过internet访问的web应用程序门户,需要在WSO2 API管理器中实现以下身份验证流。
从我们发现的文档中,应该创建一个辅助用户存储,以允许应用程序的最终用户成为WSO2 API用户的一部分,因此身份验证将由API管理器本身负责。我希望更好地了解如何实施这一目标。
发布于 2021-06-26 18:34:23
您可以将应用程序的用户存储作为API管理器中的辅助存储,并实现您的需求。有关配置二次用户存储的详细信息,请参阅有关配置的正式文档。
此外,如果您有一个JDBC用户存储,那么您可以定制API管理器中的辅助用户存储的查询,以正确地查询用户条目。此外,您还可以实现自定义的用户商店管理器和插件(如果您有更多的自定义字段和操作)。
回答你的问题
通过应用程序中的用户管理屏幕,预期最终用户数据库中的更改是非常动态的,是否需要以某种方式将其更新为API管理器用户存储?或者可以从适用的用户表中直接读取API管理器用户存储区吗?
不,它不需要在API管理器中执行任何手动更改,除非您没有正确配置用户存储。但是,请注意,如果您计划使用应用程序用户存储中的用户的用户在API平台中创建API和订阅,那么删除这些用户可能会导致平台中不一致的行为。
API管理器能否针对每个用户执行应用程序DB中配置的加密密码验证?
您可以编写一个自定义的用户商店管理器来处理密码验证。
有没有其他方法,例如,我的应用程序公开一个rest端点进行身份验证,而API管理器通过传递作为令牌API一部分接收的用户名和密码来调用这个端点来执行身份验证。
我可以想出一个替代REST方法的方法。它是开发一个定制的Handler,并使它与API一起执行除了令牌验证之外的验证。总之,
APIAuthenticationHandler一起使用username和password但是,请注意,这个外部验证过程需要足够快,以避免在较长时间内阻塞API管理器。
https://stackoverflow.com/questions/66451288
复制相似问题