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 |
|