尝试使用ADFS OAuth2和Web应用程序代理进行预身份验证时出现边缘令牌错误

时间:2018-06-22 17:59:53

标签: oauth-2.0 jwt adfs adal windows-server-2016

我们正尝试使用带ADFS的OAuth预身份验证在Web应用程序代理后面建立一个后端Web服务站点。

首先在ADFS中,我们创建了一个应用程序组(本机应用程序访问Web API),然后使用OAuth预身份验证将其发布到WAP中,然后选择适当的ADFS应用程序组。

出于测试目的,我们使用fiddler尝试从该站点请求资源,并获得带有以下标头的401(这是我们目前所期望的)

WWW-Authenticate: Bearer authorization_uri=https://[OUR_ADFS_SERVER]/adfs/oauth2/authorize

使用 ADAL 库中的AuthenticationContext.AcquireTokenAsync方法,指定授权URI和ADFS应用程序组的已定义参数,然后从ADFS收到有效的JWT。

当我们尝试使用JWT请求受保护的资源时,会出现问题,我们使用以下http标头Authorization: Bearer [JWT]来指定它,但是我们仍然收到401,并且WAP在其事件日志中具有以下警告: / p>

Web Application Proxy received a request with a nonvalid edge token. 
The token is not valid because it could not be parsed.
Error: Edge Token validation failed. Failed to serialize JSON object. Exception: The input 
is not a valid Base-64 string as it contains a non-base 64 character, more than two 
padding characters, or an illegal character among the padding characters.

Token: 
[JWT DUMP]
Received token: 
[JWT DUMP]

0 个答案:

没有答案