WSO2 Identity Server未使用OAuth / OpenID返回请求的声明

时间:2016-05-06 13:50:25

标签: oauth wso2 wso2is claims-based-identity

我正在尝试使用WSO2 Identity Server 5.1.0进行OAuth / OpenID,但是我在返回我需要的声明时遇到了问题。我不确定我是否误解了这应该如何运作......

我使用默认的居民身份提供商。

服务提供商的声明配置如下: enter image description here

此SP的此唯一配置是使用OAuth2进行入站身份验证。

当我使用openid范围获取此服务的OAuth令牌时,收到的JWT只有主题字段(在这种情况下是电子邮件地址)。我当时也希望收到所要求的索赔,即角色。

这不是这样做的方法吗?如果没有,我怎么能实现这个目标? (注意:希望仅将此保留到OAuth / OpenID)。

我非常感谢任何帮助,因为我对此非常感激。

3 个答案:

答案 0 :(得分:2)

出于好奇。您是否添加了claims请求参数来请求自定义声明?由于 OpenID Connect Core 1.0,5.5. Requesting Claims using the "claims" Request Parameter 如下所示:

  

使用claims参数是在标准集之外请求声明的唯一方法。

我猜您必须使用claims请求参数。

答案 1 :(得分:2)

目前,我们在尝试检索OpenID令牌中的请求声明时发现了某些限制。

但是,您可以尝试以下方案,

  1. 所以基本上你需要选择在http://wso2.org/oidc/claim方言与http://wso2.org/claims方言之间进行映射的声明 (我建议你试试电子邮件,姓氏和国家)

  2. 确保在用户个人资料中填写了声明值。

  3. 使用授权码授予或隐含授权

  4. 获取OpenID令牌

    通过使用WSO2 Identity Server beta包[1],您应该能够成功检索声明以及声明您设置为主题声明URI的“子”声明

    [1] https://github.com/wso2/product-is/releases/tag/v5.2.0-beta

答案 2 :(得分:0)

AFAIR这是IS5.1.0产品的错误。这将在WSO2 Identity Server 5.2.0版本中修复。您可以使用IS5.2.0 beta [1]

进行测试

[1] https://github.com/wso2/product-is/releases/tag/v5.2.0-beta

感谢
Isura