交换代码 _ identityserver3 _ AppAuth 的无效客户端
invalid Client for exchange code _ identityserver3 _ AppAuth
我在我的 Swift
应用程序中使用 AppAuth
框架进行身份验证,我可以登录,但在登录并返回到我的应用程序后,我无法交换代码并得到无效错误客户.
我的客户端配置是:
var client = new Client
{
ClientId = "IOS.Client",
ClientName = "IOS Client",
RedirectUris = { "com.mysite.accounts:/oauthredirect" },
AllowedGrantTypes = GrantTypes.Code, //AuthorizationCode
AllowedScopes = { "openid", "profile", "offline_access" },
};
我设置了 ClientSecret (SHA-256)
并且我的 ClientId
没问题,但是我收到错误消息 invalid client.
我检查了我的日志,有一个错误:secret validators could not validate secret
怎么了?
IS3 中的 IIRC 您必须设置客户端密码。我们不允许空的。
要么在客户端和服务器上设置密码,要么升级到 IS4 - IS3 已经有一段时间不推荐使用了。
使用 IdentityServer3 和 AppAuth 时,您不应在 ClientSecret
中使用特殊字符并设置授权 AuthorizationCodeWithProofKey
。
这个link很有用
我在我的 Swift
应用程序中使用 AppAuth
框架进行身份验证,我可以登录,但在登录并返回到我的应用程序后,我无法交换代码并得到无效错误客户.
我的客户端配置是:
var client = new Client
{
ClientId = "IOS.Client",
ClientName = "IOS Client",
RedirectUris = { "com.mysite.accounts:/oauthredirect" },
AllowedGrantTypes = GrantTypes.Code, //AuthorizationCode
AllowedScopes = { "openid", "profile", "offline_access" },
};
我设置了 ClientSecret (SHA-256)
并且我的 ClientId
没问题,但是我收到错误消息 invalid client.
我检查了我的日志,有一个错误:secret validators could not validate secret
怎么了?
IS3 中的 IIRC 您必须设置客户端密码。我们不允许空的。
要么在客户端和服务器上设置密码,要么升级到 IS4 - IS3 已经有一段时间不推荐使用了。
使用 IdentityServer3 和 AppAuth 时,您不应在 ClientSecret
中使用特殊字符并设置授权 AuthorizationCodeWithProofKey
。
这个link很有用