C# DotNetOpenAuth.OAuth2.TokenEndpointProtocolException
我们正在实现一个IAuthorizationServerHost,以便为我们的站点组提供OAuth2功能 我使用的是DontNetOpenAuth 0.25包,它是从0.23包升级而来的,该包需要一些更改,这些更改需要一些代码更改 在AuthorizationServer.HandleTokenRequest()调用期间,我得到以下信息 DotNetOpenAuth.OAuth:2012-08-24T18:06:55错误DotNetOpenAuth.OAuth- 客户端凭据授予客户端的访问请求 “*省略了*”被授权服务器主机拒绝。A. 类型的第一次机会例外 “DotNetOpenAuth.OAuth2.TokenEndpointProtocolException”在中发生 DotNetOpenAuth.OAuth2.AuthorizationServer.dll DotNetOpenAuth.Messaging.Channel:2012-08-24T18:06:55调试 DotNetOpenAuth.Messaging.Channel-准备发送 AccessTokenFailedResponse(2.0)消息。 DotNetOpenAuth.Messaging.Bindings:2012-08-24T18:06:55调试 DotNetOpenAuth.Messaging.Bindings-绑定元素 DotNetOpenAuth.OAuth2.ChannelElements.MessageValidationBindingElement 未应用于邮件。DotNetOpenAuth.Messaging.Bindings: 2012-08-24T18:06:55调试DotNetOpenAuth.Messaging.Bindings-绑定 要素 DotNetOpenAuth.OAuth2.ChannelElements.TokenCodeSerializationBindingElement 未应用于邮件。DotNetOpenAuth.Messaging.Channel: 2012-08-24T18:06:55信息DotNetOpenAuth.Messaging.Channel-已准备好 传出AccessTokenFailedResponse(2.0)消息,用于: 错误:未经授权的\u客户端 DotNetOpenAuth.Messaging.Channel:2012-08-24T18:06:55调试 DotNetOpenAuth.Messaging.Channel-发送消息: AccessTokenFailedResponse 我可以确认客户id是正确的 有人对这个问题有什么建议或经验吗 我尝试过用chrome的REST控制台手动创建请求,结果也一样 请求的一些代码片段(修改以保护无辜者) //客户端C# DotNetOpenAuth.OAuth2.TokenEndpointProtocolException,c#,asp.net-mvc,oauth-2.0,C#,Asp.net Mvc,Oauth 2.0,我们正在实现一个IAuthorizationServerHost,以便为我们的站点组提供OAuth2功能 我使用的是DontNetOpenAuth 0.25包,它是从0.23包升级而来的,该包需要一些更改,这些更改需要一些代码更改 在AuthorizationServer.HandleTokenRequest()调用期间,我得到以下信息 DotNetOpenAuth.OAuth:2012-08-24T18:06:55错误DotNetOpenAuth.OAuth- 客户端凭据授予客户端的访问请求
public class MyOAuth2Client : OAuth2Client
{
...
}
上述类在MVC4 AuthConfig.cs中注册为客户端
函数QueryAccessToken已被覆盖,我使用DotNetOpenAuth库中的WebServerClient对象来构造请求。MyWebServerClient.GetClientAccessToken()
//服务器端
我已经实现了IAuthorizationServerHost接口并构建了一个授权服务器
AuthorizationServer _authorizationServer = new AuthorizationServer( new OAuth2AuthorizationServerHost() );
令牌查询通过
public ActionResult Token()
{
_authorizationServer.HandleTokenRequest( Request ).AsActionResult();
}
嗨,请在问题中添加代码。嗨,请在问题中添加代码。