public async Task MarkUserAsAuthenticated(AppUser aLoggedUser) { await LocalStorageSvc.SetItemAsync(AppConstants.AccessKey, aLoggedUser.AccessToken); await LocalStorageSvc.SetItemAsync(AppConstants.RefreshKey, aLoggedUser.RefreshToken); var vIdentity = GetClaimsIdentity(aLoggedUser); var vClaimsPrincipal = new ClaimsPrincipal(vIdentity); NotifyAuthenticationStateChanged(Task.FromResult(new AuthenticationState(vClaimsPrincipal))); }
public async Task MarkUserAsLoggedOut() { await LocalStorageSvc.RemoveItemAsync(AppConstants.RefreshKey); await LocalStorageSvc.RemoveItemAsync(AppConstants.AccessKey); var vIdentity = new ClaimsIdentity(); var vUser = new ClaimsPrincipal(vIdentity); NotifyAuthenticationStateChanged(Task.FromResult(new AuthenticationState(vUser))); }
public override async Task <AuthenticationState> GetAuthenticationStateAsync() { var vAccessToken = await LocalStorageSvc.GetItemAsync <string>(AppConstants.AccessKey); ClaimsIdentity vIdentity; if (vAccessToken != null && vAccessToken != string.Empty) { AppUser user = await AuthSvc.GetUserByAccessTokenAsync(vAccessToken); vIdentity = GetClaimsIdentity(user); } else { vIdentity = new ClaimsIdentity(); } var vClaimsPrincipal = new ClaimsPrincipal(vIdentity); return(await Task.FromResult(new AuthenticationState(vClaimsPrincipal))); }