final case class AuthProvider(id: String = "", issuer: String = "", jwksUri: String = "", audiences: String = "", authorizationUrl: String = "", unknownFields: UnknownFieldSet = ...) extends GeneratedMessage with Updatable[AuthProvider] with Product with Serializable

Configuration for an authentication provider, including support for [JSON Web Token (JWT)](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32).

id

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

issuer

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

jwksUri

URL of the provider's public key set to validate signature of the JWT. See [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). Optional if the key set document:

  • can be retrieved from [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html of the issuer.
  • can be inferred from the email domain of the issuer (e.g. a Google service account). Example: https://www.googleapis.com/oauth2/v1/certs
audiences

The list of JWT [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). that are allowed to access. A JWT containing any of these audiences will be accepted. When this setting is absent, only JWTs with audience "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" will be accepted. For example, if no audiences are in the setting, LibraryService API will only accept JWTs with the following audience "https://library-example.googleapis.com/google.example.library.v1.LibraryService". Example: audiences: bookstore_android.apps.googleusercontent.com, bookstore_web.apps.googleusercontent.com

authorizationUrl

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

Annotations
@SerialVersionUID()
Linear Supertypes
Product, Equals, Updatable[AuthProvider], GeneratedMessage, Serializable, Serializable, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AuthProvider
  2. Product
  3. Equals
  4. Updatable
  5. GeneratedMessage
  6. Serializable
  7. Serializable
  8. AnyRef
  9. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new AuthProvider(id: String = "", issuer: String = "", jwksUri: String = "", audiences: String = "", authorizationUrl: String = "", unknownFields: UnknownFieldSet = ...)

    id

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

    issuer

    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

    jwksUri

    URL of the provider's public key set to validate signature of the JWT. See [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html#ProviderMetadata). Optional if the key set document:

    • can be retrieved from [OpenID Discovery](https://openid.net/specs/openid-connect-discovery-1_0.html of the issuer.
    • can be inferred from the email domain of the issuer (e.g. a Google service account). Example: https://www.googleapis.com/oauth2/v1/certs
    audiences

    The list of JWT [audiences](https://tools.ietf.org/html/draft-ietf-oauth-json-web-token-32#section-4.1.3). that are allowed to access. A JWT containing any of these audiences will be accepted. When this setting is absent, only JWTs with audience "https://[Service_name][google.api.Service.name]/[API_name][google.protobuf.Api.name]" will be accepted. For example, if no audiences are in the setting, LibraryService API will only accept JWTs with the following audience "https://library-example.googleapis.com/google.example.library.v1.LibraryService". Example: audiences: bookstore_android.apps.googleusercontent.com, bookstore_web.apps.googleusercontent.com

    authorizationUrl

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

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val audiences: String
  6. val authorizationUrl: String
  7. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  8. def companion: AuthProvider.type
    Definition Classes
    AuthProvider → GeneratedMessage
  9. def discardUnknownFields: AuthProvider
  10. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  11. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  12. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  13. def getField(__field: FieldDescriptor): PValue
    Definition Classes
    AuthProvider → GeneratedMessage
  14. def getFieldByNumber(__fieldNumber: Int): Any
    Definition Classes
    AuthProvider → GeneratedMessage
  15. val id: String
  16. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  17. val issuer: String
  18. val jwksUri: String
  19. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  20. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  21. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  22. def serializedSize: Int
    Definition Classes
    AuthProvider → GeneratedMessage
  23. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  24. final def toByteArray: Array[Byte]
    Definition Classes
    GeneratedMessage
  25. final def toByteString: ByteString
    Definition Classes
    GeneratedMessage
  26. final def toPMessage: PMessage
    Definition Classes
    GeneratedMessage
  27. def toProtoString: String
    Definition Classes
    AuthProvider → GeneratedMessage
  28. val unknownFields: UnknownFieldSet
  29. def update(ms: (Lens[AuthProvider, AuthProvider]) ⇒ Mutation[AuthProvider]*): AuthProvider
    Definition Classes
    Updatable
  30. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()
  33. def withAudiences(__v: String): AuthProvider
  34. def withAuthorizationUrl(__v: String): AuthProvider
  35. def withId(__v: String): AuthProvider
  36. def withIssuer(__v: String): AuthProvider
  37. def withJwksUri(__v: String): AuthProvider
  38. def withUnknownFields(__v: UnknownFieldSet): AuthProvider
  39. final def writeDelimitedTo(output: OutputStream): Unit
    Definition Classes
    GeneratedMessage
  40. def writeTo(_output__: CodedOutputStream): Unit
    Definition Classes
    AuthProvider → GeneratedMessage
  41. final def writeTo(output: OutputStream): Unit
    Definition Classes
    GeneratedMessage

Inherited from Product

Inherited from Equals

Inherited from Updatable[AuthProvider]

Inherited from GeneratedMessage

Inherited from Serializable

Inherited from Serializable

Inherited from AnyRef

Inherited from Any

Ungrouped