Ejemplo n.º 1
0
 public async Task InitializeAsync()
 {
     var token = await GetTokenAsync();
     if (token != null)
     {
         CurrentAccount = await CreateUserAccount(token);
     }
 }
Ejemplo n.º 2
0
 private void GetMsaToken(WebAccountProviderCommand command)
 {
     CurrentAccount = null;
     var task = GetMsaTokenAsync(command);
     signInStartedCallback(task);
 }
Ejemplo n.º 3
0
 public async Task SignOutAsync()
 {
     await webAccount?.SignOutAsync();
     UpdateWebAccount(null);
     CurrentAccount = null;
 }
Ejemplo n.º 4
0
        private async Task<UserAccount> GetMsaTokenAsync(WebAccountProviderCommand command)
        {
            var request = new WebTokenRequest(command.WebAccountProvider, tokenScope);
            var result = await WebAuthenticationCoreManager.RequestTokenAsync(request);

            if (result.ResponseStatus == WebTokenRequestStatus.Success)
            {
                UpdateWebAccount(result.ResponseData[0].WebAccount);
                CurrentAccount = await CreateUserAccount(result.ResponseData[0].Token);
                return CurrentAccount;
            }
            else
            {
                throw new InvalidOperationException("WebAuthentication Response: " + result.ResponseStatus);
            }
        }