为WSO2 API管理器使用外部身份验证服务器

为WSO2 API管理器使用外部身份验证服务器,wso2,wso2-am,Wso2,Wso2 Am,我对最终用户身份验证如何与WSO2 AM一起工作感到困惑 默认情况下,WSO2 AM充当OAuth流的用户身份验证服务器,因此根据通过API存储输入并存储在密钥管理器中的用户凭据验证用户凭据。但这些用户不是目标API的最终用户,而是已经注册构建应用程序以使用API的开发人员。这对我来说没有意义,所以我可能误解了文档 我需要并且认为大多数其他API发布者需要的是根据API发布者的用户身份验证API对最终用户进行身份验证的能力,因此WSO2 AM通过重定向(在授权授予或隐式授权流的情况下)或服务器调

我对最终用户身份验证如何与WSO2 AM一起工作感到困惑

默认情况下,WSO2 AM充当OAuth流的用户身份验证服务器,因此根据通过API存储输入并存储在密钥管理器中的用户凭据验证用户凭据。但这些用户不是目标API的最终用户,而是已经注册构建应用程序以使用API的开发人员。这对我来说没有意义,所以我可能误解了文档

我需要并且认为大多数其他API发布者需要的是根据API发布者的用户身份验证API对最终用户进行身份验证的能力,因此WSO2 AM通过重定向(在授权授予或隐式授权流的情况下)或服务器调用将用户身份验证委托给这样的外部身份验证API(在授予资源所有者凭据的情况下)

对于重定向和服务器-服务器交互,如何配置这样的设置,以及WSO2 AM和外部身份验证API之间的接口是什么?您能给我指一下这种设置的任何文档或示例吗

thx,
Chris

wso2 APIM有四个角色模型->管理员、创建者、发布者和订阅者。 因此,拥有创建者和发布者角色的人可以在发布者应用程序中创建和发布api(他们是开发人员)。 拥有订阅方角色的用户可以订阅存储中的api并生成宣誓令牌(他们是最终用户)。因此,每当用户从存储中挑选时,都会将其分配给订阅方角色。因此,只有订阅方角色的用户是该api的最终用户

因此,当最终用户使用从存储中获取的令牌访问api时,他将通过APIM进行身份验证


1.

我的观点是,最终用户直接使用应用程序,而不是API。应用程序开发人员构建使用API的应用程序。因此,这符合WSO2 API Manager的理念,它是为应用程序开发人员服务的


就API管理器而言,API发布者的用户身份验证API只是另一个API。您可以通过API管理器公开此API,并让用户(或我认为的应用程序)使用指定参数调用API并获得响应(在您的情况下,将用户凭据作为参数,并基于这些凭据的身份验证进行响应)。底层API的功能与API Manager无关,它只是简化了API调用的管理。

通常应用程序向API发出经过身份验证的用户特定请求,以服务于使用应用程序的用户。OAuth2是应用程序用于获取用户特定OAuth令牌的少数OAuth授权选项之一,它需要Authenticate根据API发布者的用户身份验证API验证用户的凭据。以下介绍如何操作以供参考。

应用程序通常会向API发出经过身份验证的用户特定请求,以服务于使用应用程序的用户。OAuth2[所有者密码凭据授予]是应用程序用于获取用户特定的OAuth令牌的少数OAuth授权选项之一,它需要根据API发布者的用户身份验证API对用户的凭据进行身份验证。有关如何进行身份验证的[文档]供参考。