public class GoogleWebAuthorizationBrokerA helper utility to manage the authorization code flow.
Namespace
Google.Apis.Auth.OAuth2Assembly
Google.Apis.Auth.dll
Remarks
This class is only suitable for client-side use, as it starts a local browser that requires user interaction. Do not use this class when executing on a web server, or any cases where the authenticating end-user is not able to do directly interact with a launched browser.
Fields
Folder
public static string FolderThe folder which is used by the FileDataStore.
| Field Value | |
|---|---|
| Type | Description | 
string | 
        |
The reason that this is not 'private const' is that a user can change it and store the credentials in a different location.
Methods
AuthorizeAsync(ClientSecrets, IEnumerable<string>, string, CancellationToken, IDataStore, ICodeReceiver)
public static Task<UserCredential> AuthorizeAsync(ClientSecrets clientSecrets, IEnumerable<string> scopes, string user, CancellationToken taskCancellationToken, IDataStore dataStore = null, ICodeReceiver codeReceiver = null)Asynchronously authorizes the specified user. Requires user interaction; see GoogleWebAuthorizationBroker remarks for more details.
| Parameters | |
|---|---|
| Name | Description | 
clientSecrets | 
        ClientSecretsThe client secrets.  | 
      
scopes | 
        IEnumerablestringThe scopes which indicate the Google API access your application is requesting.  | 
      
user | 
        stringThe user to authorize.  | 
      
taskCancellationToken | 
        CancellationTokenCancellation token to cancel an operation.  | 
      
dataStore | 
        IDataStoreThe data store, if not specified a file data store will be used.  | 
      
codeReceiver | 
        ICodeReceiverThe code receiver, if not specified a local server code receiver will be used.  | 
      
| Returns | |
|---|---|
| Type | Description | 
TaskUserCredential | 
        User credential.  | 
      
In case no data store is specified, FileDataStore will be used by default.
AuthorizeAsync(Initializer, IEnumerable<string>, string, bool, CancellationToken, IDataStore, ICodeReceiver)
public static Task<UserCredential> AuthorizeAsync(GoogleAuthorizationCodeFlow.Initializer initializer, IEnumerable<string> scopes, string user, bool usePkce, CancellationToken taskCancellationToken, IDataStore dataStore = null, ICodeReceiver codeReceiver = null)The core logic for asynchronously authorizing the specified user. Requires user interaction; see GoogleWebAuthorizationBroker remarks for more details.
| Parameters | |
|---|---|
| Name | Description | 
initializer | 
        GoogleAuthorizationCodeFlowInitializerThe authorization code initializer.  | 
      
scopes | 
        IEnumerablestringThe scopes which indicate the Google API access your application is requesting.  | 
      
user | 
        stringThe user to authorize.  | 
      
usePkce | 
        boolIf true, PKCE will be used by the authorization flow. Note that using PKCE is recommended for security reasons. See https://developers.google.com/identity/protocols/oauth2/native-app for more information.  | 
      
taskCancellationToken | 
        CancellationTokenCancellation token to cancel an operation.  | 
      
dataStore | 
        IDataStoreThe data store, if not specified a file data store will be used.  | 
      
codeReceiver | 
        ICodeReceiverThe code receiver, if not specified a local server code receiver will be used.  | 
      
| Returns | |
|---|---|
| Type | Description | 
TaskUserCredential | 
        User credential.  | 
      
AuthorizeAsync(Initializer, IEnumerable<string>, string, CancellationToken, IDataStore, ICodeReceiver)
public static Task<UserCredential> AuthorizeAsync(GoogleAuthorizationCodeFlow.Initializer initializer, IEnumerable<string> scopes, string user, CancellationToken taskCancellationToken, IDataStore dataStore = null, ICodeReceiver codeReceiver = null)The core logic for asynchronously authorizing the specified user. Requires user interaction; see GoogleWebAuthorizationBroker remarks for more details.
| Parameters | |
|---|---|
| Name | Description | 
initializer | 
        GoogleAuthorizationCodeFlowInitializerThe authorization code initializer.  | 
      
scopes | 
        IEnumerablestringThe scopes which indicate the Google API access your application is requesting.  | 
      
user | 
        stringThe user to authorize.  | 
      
taskCancellationToken | 
        CancellationTokenCancellation token to cancel an operation.  | 
      
dataStore | 
        IDataStoreThe data store, if not specified a file data store will be used.  | 
      
codeReceiver | 
        ICodeReceiverThe code receiver, if not specified a local server code receiver will be used.  | 
      
| Returns | |
|---|---|
| Type | Description | 
TaskUserCredential | 
        User credential.  | 
      
AuthorizeAsync(Stream, IEnumerable<string>, string, CancellationToken, IDataStore, ICodeReceiver)
public static Task<UserCredential> AuthorizeAsync(Stream clientSecretsStream, IEnumerable<string> scopes, string user, CancellationToken taskCancellationToken, IDataStore dataStore = null, ICodeReceiver codeReceiver = null)Asynchronously authorizes the specified user. Requires user interaction; see GoogleWebAuthorizationBroker remarks for more details.
| Parameters | |
|---|---|
| Name | Description | 
clientSecretsStream | 
        StreamThe client secrets stream. The authorization code flow constructor is responsible for disposing the stream.  | 
      
scopes | 
        IEnumerablestringThe scopes which indicate the Google API access your application is requesting.  | 
      
user | 
        stringThe user to authorize.  | 
      
taskCancellationToken | 
        CancellationTokenCancellation token to cancel an operation.  | 
      
dataStore | 
        IDataStoreThe data store, if not specified a file data store will be used.  | 
      
codeReceiver | 
        ICodeReceiverThe code receiver, if not specified a local server code receiver will be used.  | 
      
| Returns | |
|---|---|
| Type | Description | 
TaskUserCredential | 
        User credential.  | 
      
In case no data store is specified, FileDataStore will be used by default.
ReauthorizeAsync(UserCredential, CancellationToken, ICodeReceiver)
public static Task ReauthorizeAsync(UserCredential userCredential, CancellationToken taskCancellationToken, ICodeReceiver codeReceiver = null)Asynchronously reauthorizes the user. This method should be called if the users want to authorize after they revoked the token. Requires user interaction; see GoogleWebAuthorizationBroker remarks for more details.
| Parameters | |
|---|---|
| Name | Description | 
userCredential | 
        UserCredentialThe current user credential. Its Token will be updated.  | 
      
taskCancellationToken | 
        CancellationTokenCancellation token to cancel an operation.  | 
      
codeReceiver | 
        ICodeReceiverThe code receiver, if not specified a local server code receiver will be used.  | 
      
| Returns | |
|---|---|
| Type | Description | 
Task | 
        |