Oauth 2.0 未从ADFS 3.0获取OAuth2访问令牌中使用的JWT中的用户标识
我以以下方式使用ADFS 3.0中支持的授权流Oauth 2.0 未从ADFS 3.0获取OAuth2访问令牌中使用的JWT中的用户标识,oauth-2.0,adfs3.0,Oauth 2.0,Adfs3.0,我以以下方式使用ADFS 3.0中支持的授权流 浏览器连接到MyService MyService将浏览器重定向到OAuth的ADFS 浏览器连接到用于OAuth授权代码的ADFS ADFS通过浏览器对用户进行身份验证 ADFS将浏览器重定向回MyService以及授权代码 浏览器连接到MyService并传递授权令牌 MyService连接到ADFS并从授权令牌获取访问令牌 但是,访问令牌缺少用户标识,MyService无法识别用户 访问令牌具有以下JWT信息 {“aud”:“urn:依赖方:
“国际空间站”: “”,
“iat”:1452875046,
“exp”:1452878646,
“认证时间”:“2016-01-15T15:35:20.248Z”,
“授权方法”: “urn:oasis:names:tc:SAML:2.0:ac:classes:PasswordProtectedTransport”,
“版本”:“1.0”,
“appid”:“我的应用” }
有人能告诉我,一旦MyService从ADFS获得访问令牌,它如何识别用户?依赖方信任中的声明规则需要定义作为JWT令牌一部分发送的声明。一旦我们添加了电子邮件、姓名等的声明规则,这些信息就被添加到JWT访问令牌中
- 打开ADFS。单击“索赔提供者信托”。点击“活动目录”。
- 然后,单击右侧的“编辑索赔规则”。 现在应该可以看到“编辑索赔”对话框。 有关添加索赔的说明,请参阅本视频。跳到时间索引2:40。
此外,如果尚未在Active Directory上启用索赔支持,则必须启用该功能。我们现在遇到了类似的问题,索赔规则是什么,您是如何添加的?谢谢,我对如何解决这个问题的详细说明非常感兴趣。我尝试添加它们,玩弄各种索赔规则,但它们似乎都不会影响JWT令牌包含的内容。还有指针吗也许我没有正确理解“依赖方”的概念。