public static async Task<ShareFileClient> PasswordAuthentication(SampleUser user, string clientId, string clientSecret) { // Initialize ShareFileClient. var configuration = Configuration.Default(); configuration.Logger = new DefaultLoggingProvider(); var sfClient = new ShareFileClient("https://secure.sf-api.com/sf/v3/", configuration); var oauthService = new OAuthService(sfClient, clientId, clientSecret); // Perform a password grant request. Will give us an OAuthToken var oauthToken = await oauthService.PasswordGrantAsync(user.Username, user.Password, user.Subdomain, user.ControlPlane); // Add credentials and update sfClient with new BaseUri sfClient.AddOAuthCredentials(oauthToken); sfClient.BaseUri = oauthToken.GetUri(); return sfClient; }
private ShareFileClient CreateClient(AuthenticationDomain domain) { var client = new ShareFileClient(domain.Uri); if (domain.OAuthToken != null) { client.AddOAuthCredentials(new Uri(domain.Uri), domain.OAuthToken); } client.AddExceptionHandler(OnException); client.AddChangeDomainHandler(OnDomainChange); return client; }