Class AuthProvider (2.2.0)

public sealed class AuthProvider : Protobuf.IMessage<AuthProvider>, Protobuf.IBufferMessage

Configuration for an authentication provider, including support for JSON Web Token (JWT).

Inheritance

Object > AuthProvider

Namespace

Google.Api

Assembly

Google.Api.CommonProtos.dll

Constructors

AuthProvider()

public AuthProvider()

AuthProvider(AuthProvider)

public AuthProvider(AuthProvider other)
Parameter
NameDescription
otherAuthProvider

Fields

AudiencesFieldNumber

public const int AudiencesFieldNumber = 4

Field number for the "audiences" field.

Field Value
TypeDescription
Int32

AuthorizationUrlFieldNumber

public const int AuthorizationUrlFieldNumber = 5

Field number for the "authorization_url" field.

Field Value
TypeDescription
Int32

IdFieldNumber

public const int IdFieldNumber = 1

Field number for the "id" field.

Field Value
TypeDescription
Int32

IssuerFieldNumber

public const int IssuerFieldNumber = 2

Field number for the "issuer" field.

Field Value
TypeDescription
Int32

JwksUriFieldNumber

public const int JwksUriFieldNumber = 3

Field number for the "jwks_uri" field.

Field Value
TypeDescription
Int32

JwtLocationsFieldNumber

public const int JwtLocationsFieldNumber = 6

Field number for the "jwt_locations" field.

Field Value
TypeDescription
Int32

Properties

Audiences

public string Audiences { get; set; }

The list of JWT audiences. that are allowed to access. A JWT containing any of these audiences will be accepted. When this setting is absent, JWTs with audiences:

Example:

audiences: bookstore_android.apps.googleusercontent.com, bookstore_web.apps.googleusercontent.com

Property Value
TypeDescription
String

AuthorizationUrl

public string AuthorizationUrl { get; set; }

Redirect URL if JWT token is required but not present or is expired. Implement authorizationUrl of securityDefinitions in OpenAPI spec.

Property Value
TypeDescription
String

Descriptor

public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
Protobuf.Reflection.MessageDescriptor

Id

public string Id { get; set; }

The unique identifier of the auth provider. It will be referred to by AuthRequirement.provider_id.

Example: "bookstore_auth".

Property Value
TypeDescription
String

Issuer

public string Issuer { get; set; }

Identifies the principal that issued the JWT. See https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.1 Usually a URL or an email address.

Example: https://securetoken.google.com Example: 1234567-compute@developer.gserviceaccount.com

Property Value
TypeDescription
String

JwksUri

public string JwksUri { get; set; }

URL of the provider's public key set to validate signature of the JWT. See OpenID Discovery. Optional if the key set document:

Example: https://www.googleapis.com/oauth2/v1/certs

Property Value
TypeDescription
String

JwtLocations

public Protobuf.Collections.RepeatedField<JwtLocation> JwtLocations { get; }

Defines the locations to extract the JWT.

JWT locations can be either from HTTP headers or URL query parameters. The rule is that the first match wins. The checking order is: checking all headers first, then URL query parameters.

If not specified, default to use following 3 locations: 1) Authorization: Bearer 2) x-goog-iap-jwt-assertion 3) access_token query parameter

Default locations can be specified as followings: jwt_locations:

  • header: Authorization value_prefix: "Bearer "
  • header: x-goog-iap-jwt-assertion
  • query: access_token
Property Value
TypeDescription
Protobuf.Collections.RepeatedField<JwtLocation>

Parser

public static Protobuf.MessageParser<AuthProvider> Parser { get; }
Property Value
TypeDescription
Protobuf.MessageParser<AuthProvider>

Methods

CalculateSize()

public int CalculateSize()
Returns
TypeDescription
Int32

Clone()

public AuthProvider Clone()
Returns
TypeDescription
AuthProvider

Equals(AuthProvider)

public bool Equals(AuthProvider other)
Parameter
NameDescription
otherAuthProvider
Returns
TypeDescription
Boolean

Equals(Object)

public override bool Equals(object other)
Parameter
NameDescription
otherObject
Returns
TypeDescription
Boolean

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
Int32

MergeFrom(AuthProvider)

public void MergeFrom(AuthProvider other)
Parameter
NameDescription
otherAuthProvider

MergeFrom(Protobuf.CodedInputStream)

public void MergeFrom(Protobuf.CodedInputStream input)
Parameter
NameDescription
inputProtobuf.CodedInputStream

ToString()

public override string ToString()
Returns
TypeDescription
String

WriteTo(Protobuf.CodedOutputStream)

public void WriteTo(Protobuf.CodedOutputStream output)
Parameter
NameDescription
outputProtobuf.CodedOutputStream