3 messaggi dal 30 novembre 2016
www.vittorio.tk
Ciao,
ho fatto un sito in ASPNET Core con autenticazione esterna Oauth2.
Adesso per recuperare alcuni dettagli dal profilo devo chiamare il profilo utilizzando il Token Utente e ho visto che è salvato nella tabella AspNetUserTokens, c'è qualche classe che mi consente di recuperarlo ?
Grazie

Vittorio
3 messaggi dal 30 novembre 2016
www.vittorio.tk
Ho trovato una soluzione:

app.UseFacebookAuthentication(options => {
options.Events = new OAuthEvents {
OnCreatingTicket = context => {
var request = new HttpRequestMessage(HttpMethod.Get, context.Options.UserInformationEndpoint);
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", context.AccessToken);
}
};
});

Qualcuno mi sa dire se è una implementazione corretta ?
3 messaggi dal 30 novembre 2016
www.vittorio.tk
Anche questa soluzione è valida

public class HomeController : Controller
{
private readonly SignInManager<ApplicationUser> _signInManager;
private readonly UserManager<ApplicationUser> _userManager;
public HomeController(UserManager<Models.ApplicationUser> userManager, SignInManager<ApplicationUser> signInManager)
{
_signInManager = signInManager;
_userManager = userManager;
}
public async Task<IActionResult> About()
{
//get user by email
var user = _userManager.Users.SingleOrDefault(x => x.Email== "xx@hotmail.com");
//get user from user manager
var userFromManager = await _userManager.GetUserAsync(User);
var externalAccessToken = await _userManager.GetAuthenticationTokenAsync(userFromManager, "Microsoft", "access_token");
ViewData["Message"] = "Your application description page.";
return View();
}
11.886 messaggi dal 09 febbraio 2002
Contributi
Ottimo, grazie per la condivisione!

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.