Ich versuche, Refresh-Token für Google-Konto mit Microsoft.Owin.Security.Google im MVC5-Projekt zu erhalten. Um RefreshToken in Resposne vom Google Server zu erhalten, muss ich access_type = offline
setzen. Aber ich kann keine geeignete Eigenschaft in GoogleOAuth2AuthenticationOptions
Objekt dafür finden.GoogleOAuth2AuthenticationOptions Einstellung access_type als offline
-Code-Authentifizierung
var gao = new GoogleOAuth2AuthenticationOptions
{
ClientId = ConfigurationManager.AppSettings.Get("GoogleClientId"),
ClientSecret = ConfigurationManager.AppSettings.Get("GoogleClientSecret"),
Provider = new GoogleOAuth2AuthenticationProvider
{
OnAuthenticated = async ctx =>
{
var refreshToken = ctx.RefreshToken;
//ctx.Identity.AddClaim(new Claim("refresh_token", refreshToken));
}
}
};
gao.Scope.Add(TasksService.Scope.Tasks);
gao.Scope.Add("openid");
app.UseGoogleAuthentication(gao);
Für diejenigen, die darüber stolpern. Sie müssen die App widerrufen und erneut zum Zustimmungsbildschirm gehen, um dieses Aktualisierungstoken zu erhalten. –