public static async Task <ODConnection> SignInToMicrosoftAccount(string userid, string path) { FileDataStore datastore = new FileDataStore(path); AppTokenResult oldRefreshToken = await LoadToken(datastore, userid, CancellationToken.None).ConfigureAwait(false); AppTokenResult appToken = null; if (oldRefreshToken != null) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken.RefreshToken); } if (null == appToken) { string code = await loginform.GetAuthenticationToken(msa_client_id, new[] { "wl.offline_access", "wl.basic", "wl.signin", "onedrive.readwrite" }, userid, "https://login.live.com/oauth20_authorize.srf", "https://login.live.com/oauth20_desktop.srf", LoginOption.OneDrive); appToken = await OneDriveWebAuthorization.RedeemAuthorizationCodeAsync(msa_client_id, "https://login.live.com/oauth20_desktop.srf", msa_client_secret, code); } if (null != appToken) { SaveRefreshToken(appToken, datastore, userid); return(new ODConnection("https://api.onedrive.com/v1.0", new OAuthTicket(appToken))); } return(null); }
public static async Task <ODConnection> SignInToMicrosoftAccount(System.Windows.Forms.IWin32Window parentWindow, string userid, string path) { FileDataStore datastore = new FileDataStore(path); AppTokenResult oldRefreshToken = await LoadToken(datastore, userid, CancellationToken.None).ConfigureAwait(false); AppTokenResult appToken = null; if (oldRefreshToken != null) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken.RefreshToken); } if (null == appToken) { appToken = await MicrosoftAccountOAuth.LoginAuthorizationCodeFlowAsync(msa_client_id, msa_client_secret, new[] { "wl.offline_access", "wl.basic", "wl.signin", "onedrive.readwrite" }); } if (null != appToken) { SaveRefreshToken(appToken.RefreshToken, datastore, userid); return(new ODConnection("https://api.onedrive.com/v1.0", new OAuthTicket(appToken))); } return(null); }
public static async Task <OAuthTicket> SignInToMicrosoftAccount(System.Windows.Forms.IWin32Window parentWindow) { string oldRefreshToken = TerraViewer.Properties.Settings.Default.RefreshToken; AppTokenResult appToken = null; if (!string.IsNullOrEmpty(oldRefreshToken)) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken); } if (null == appToken) { appToken = await MicrosoftAccountOAuth.LoginAuthorizationCodeFlowAsync(msa_client_id, msa_client_secret, new[] { /*"wl.offline_access", "wl.basic", */ "wl.signin", "wl.emails" /*, "onedrive.readwrite"*/ }); } if (null != appToken) { SaveRefreshToken(appToken.RefreshToken); return(new OAuthTicket(appToken)); } return(null); }
public static async Task <ODConnection> SignInToMicrosoftAccount(System.Windows.Forms.IWin32Window parentWindow) { string oldRefreshToken = Properties.Settings.Default.RefreshToken; AppTokenResult appToken = null; if (!string.IsNullOrEmpty(oldRefreshToken)) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken); } if (null == appToken) { appToken = await MicrosoftAccountOAuth.LoginAuthorizationCodeFlowAsync(msa_client_id, msa_client_secret, new[] { "wl.offline_access", "wl.basic", "wl.signin", "onedrive.readwrite" }); } SaveRefreshToken(appToken.RefreshToken); if (null != appToken) { return(new ODConnection("https://api.onedrive.com/v1.0", new OAuthTicket(appToken))); } return(null); }
public static async Task <AppTokenResult> RenewAccessTokenAsync(OAuthTicket ticket, FileDataStore datastore, string userid) { string oldRefreshToken = ticket.RefreshToken; AppTokenResult appToken = null; if (!string.IsNullOrEmpty(oldRefreshToken)) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken); await SaveToken(datastore, userid, appToken, CancellationToken.None); } return(appToken); }
public static async Task <AppTokenResult> RenewAccessTokenAsync(OAuthTicket ticket) { string oldRefreshToken = ticket.RefreshToken; AppTokenResult appToken = null; if (!string.IsNullOrEmpty(oldRefreshToken)) { appToken = await MicrosoftAccountOAuth.RedeemRefreshTokenAsync(msa_client_id, msa_client_secret, oldRefreshToken); SaveRefreshToken(appToken.RefreshToken); } return(appToken); }