Github 的 ServiceStack OAuth 问题
ServiceStack OAuth Issue with Github
我正在使用 dotnet core 3.1,最新版本的 ServiceStack,我正在尝试使用 Google、Microsoft 和 Github OAuth。
到目前为止,对于 Google 和 Microsoft,我没有遇到任何问题,但是,当我导航至 Github 并单击 'Github' 时,对于 Github按钮。
我被重定向到 GitHub 并显示同意页面。
Personal user data
Full access
当我点击 Authorize
时,我被重定向回我的本地主机:/login#f=AccessTokenFailed
如果我登录我的开发者设置,我会看到 1 个用户。
所以,我不确定这是 ServiceStack 中的工作流问题,还是我的实现中的问题。
根据我的实施,我有这个:
appsettings.json
"oauth.github.Scopes": "user,user:email",
"oauth.github.ClientId" :"xxx",
"oauth.github.ClientSecret": "xxx",
...
Plugins.Add(new AuthFeature(
() => new AuthUserSession(),
new IAuthProvider[] {
new JwtAuthProvider
{
HashAlgorithm = "HS256",
RequireSecureConnection = false,
AuthKeyBase64 = "xxx",
CreatePayloadFilter = (payload,session) => {},
PopulateSessionFilter = (session, token, req) => {}
},
new GoogleAuthProvider(appSettings),
new GithubAuthProvider(appSettings),
new MicrosoftGraphAuthProvider(appSettings) }
));
初始重定向回我的应用程序后,当我再次导航到 /auth 时,我发现我没有登录,但是当我再次点击 Github 按钮时,我又被重定向回来了URL (AccessTokenFailed) 中的相同错误消息(没有同意提示或任何内容)。
知道这里有什么问题吗?
此问题是由于新 GitHub OAuth Apps requiring access tokens to be submitted via Authorization Header which has now been resolved from this commit。
此更改现在可从最新的 v5.9.3+ 开始使用,即 available on MyGet。
我正在使用 dotnet core 3.1,最新版本的 ServiceStack,我正在尝试使用 Google、Microsoft 和 Github OAuth。
到目前为止,对于 Google 和 Microsoft,我没有遇到任何问题,但是,当我导航至 Github 并单击 'Github' 时,对于 Github按钮。
我被重定向到 GitHub 并显示同意页面。
Personal user data
Full access
当我点击 Authorize
时,我被重定向回我的本地主机:/login#f=AccessTokenFailed
如果我登录我的开发者设置,我会看到 1 个用户。
所以,我不确定这是 ServiceStack 中的工作流问题,还是我的实现中的问题。
根据我的实施,我有这个:
appsettings.json
"oauth.github.Scopes": "user,user:email",
"oauth.github.ClientId" :"xxx",
"oauth.github.ClientSecret": "xxx",
...
Plugins.Add(new AuthFeature(
() => new AuthUserSession(),
new IAuthProvider[] {
new JwtAuthProvider
{
HashAlgorithm = "HS256",
RequireSecureConnection = false,
AuthKeyBase64 = "xxx",
CreatePayloadFilter = (payload,session) => {},
PopulateSessionFilter = (session, token, req) => {}
},
new GoogleAuthProvider(appSettings),
new GithubAuthProvider(appSettings),
new MicrosoftGraphAuthProvider(appSettings) }
));
初始重定向回我的应用程序后,当我再次导航到 /auth 时,我发现我没有登录,但是当我再次点击 Github 按钮时,我又被重定向回来了URL (AccessTokenFailed) 中的相同错误消息(没有同意提示或任何内容)。
知道这里有什么问题吗?
此问题是由于新 GitHub OAuth Apps requiring access tokens to be submitted via Authorization Header which has now been resolved from this commit。
此更改现在可从最新的 v5.9.3+ 开始使用,即 available on MyGet。