用于Web应用程序的作者和身份验证的wso2 API管理器

时间:2016-12-18 06:00:19

标签: wso2 wso2-am

我有一个网络应用程序,前端层有一个基于角度的UI。它有公共页面和其他私人页面,登录用户可以访问它,它还取决于登录用户的角色 我的基于服务器的应用程序是基于Java的休息服务api。

我如何使用wso2来处理用户身份验证和基于角色的authoration.i希望根据用户的角色增加一层api安全性。

有人可以在wso2中解释这个的最佳架构吗? 如果我使用wso2 api管理器,我该如何处理用户的登录以及如何将api访问与登录用户的角色联系起来?

提前致谢

2 个答案:

答案 0 :(得分:0)

您可以使用wso2 appmanager来控制任何网络应用的访问[1]。应用程序管理器支持基于角色的访问控制以及基于xacml策略的访问控制。为了提供基于api级别角色的安全性,您可以在wso2 api manager

中使用范围[2]

[1] https://docs.wso2.com/display/APPM120/Web+Application+Resource+Authorization

[2] https://docs.wso2.com/display/APPM120/Web+Application+Resource+Authorization

答案 1 :(得分:0)

让我建议另一个解决方案。我还没试过APIM。但由于APIM中还安装了Identity功能,因此这应该可行。

使用OpenID Connect进行登录。 See here获取样本。此示例适用于IS,但它也适用于APIM。只有端点URL在APIM中有所不同。

Token: https://localhost:8243/token 
Revoke: https://localhost:8243/revoke 
Authorize: https://localhost:8243/authorize 

在用户登录时,您会收到包含用户声明的ID_token。您可以根据这些数据允许/拒绝页面查看。

在上面的步骤中,您将创建一个SP并生成客户端密钥 - 密钥对。您可以在APIM的应用程序中设置相同的密钥。 Read this

然后,正如我提到的here,您可以使用范围来按角色保护您的API。