vertx-lang-scala-docs_2.12 3.9.1 API < Back
 

# Packages

-  package root
  Definition Classes
    root
-  package io
  Definition Classes
    root
-  package vertx
  Definition Classes
    io
-  package scala
  Definition Classes
    vertx
-  package ext
  Definition Classes
    scala
-  package auth
  Definition Classes
    ext
-  package oauth2
  Definition Classes
    auth
-  package providers
  Definition Classes
    oauth2
-  package rbac
  Definition Classes
    oauth2
- AccessToken
- KeycloakHelper
- OAuth2Auth
- OAuth2ClientOptions
- OAuth2RBAC
- OAuth2Response

c

io.vertx.scala.ext.auth.oauth2

# OAuth2Auth 

###
Companion object OAuth2Auth

#### class OAuth2Auth extends AuthProvider

Factory interface for creating OAuth2 based io.vertx.scala.ext.auth.AuthProvider instances.

Linear Supertypes
AuthProvider, AnyRef, Any
 
Ordering

1. Alphabetic
2. By Inheritance

Inherited

1. OAuth2Auth
2. AuthProvider
3. AnyRef
4. Any

1. Hide All
2. Show All

Visibility

1. Public
2. All

### Instance Constructors

1.  new OAuth2Auth(_asJava: AnyRef)

### 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.  def asJava: AnyRef
   Definition Classes
     AuthProvider
6.  def authenticate(authInfo: JsonObject, resultHandler: Handler[AsyncResult[User]]): Unit

   Authenticate a user.

   Authenticate a user.

   The first argument is a JSON object containing information for authenticating the user. What this actually contains depends on the specific implementation. In the case of a simple username/password based authentication it is likely to contain a JSON object with the following structure:

         {
           "username": "tim",
           "password": "mypassword"
         `

   For other types of authentication it contain different information - for example a JWT token or OAuth bearer token.

   If the user is successfully authenticated a io.vertx.scala.ext.auth.User object is passed to the handler in an io.vertx.scala.core.AsyncResult. The user object can then be used for authorisation. * @param authInfo The auth information

   resultHandler

     The result handler

   Definition Classes
     AuthProvider
7.  def authenticateFuture(authInfo: JsonObject): Future[User]

   Like authenticate but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

   Like authenticate but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

   Definition Classes
     AuthProvider
8.  def authorizeURL(params: JsonObject): String

   Generate a redirect URL to the authN/Z backend.

   Generate a redirect URL to the authN/Z backend. It only applies to auth_code flow.

9.  def clone(): AnyRef
   Attributes
     protected[java.lang]
   Definition Classes
     AnyRef
   Annotations
     @native() @throws( ... )
10.  def decodeToken(token: String, handler: Handler[AsyncResult[AccessToken]]): OAuth2Auth

    Decode a token to a io.vertx.scala.ext.auth.oauth2.AccessToken object.

    Decode a token to a io.vertx.scala.ext.auth.oauth2.AccessToken object. This is useful to handle bearer JWT tokens. * @param token the access token (base64 string)

    handler

      A handler to receive the event

    returns

      self

11.  def decodeTokenFuture(token: String): Future[AccessToken]

    Like decodeToken but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

12.  final def eq(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
13.  def equals(arg0: Any): Boolean
    Definition Classes
      AnyRef → Any
14.  def finalize(): Unit
    Attributes
      protected[java.lang]
    Definition Classes
      AnyRef
    Annotations
      @throws( classOf[java.lang.Throwable] )
15.  final def getClass(): Class[_]
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
16.  def getFlowType(): OAuth2FlowType

    Returns the configured flow type for the Oauth2 provider.

    Returns the configured flow type for the Oauth2 provider. * @return the flow type.

17.  def getScopeSeparator(): String

    Returns the scope separator.

    Returns the scope separator.

    The RFC 6749 states that a scope is expressed as a set of case-sensitive and space-delimited strings, however vendors tend not to agree on this and we see the following cases being used: space, plus sign, comma. * @return what value was used in the configuration of the object, falling back to the default value which is a space.

18.  def getToken(params: JsonObject, handler: Handler[AsyncResult[AccessToken]]): Unit

    Returns the Access Token object.

    Returns the Access Token object. * @param params - JSON with the options, each flow requires different options.

    handler

      - The handler returning the results.

19.  def getTokenFuture(params: JsonObject): Future[AccessToken]

    Like getToken but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

20.  def hashCode(): Int
    Definition Classes
      AnyRef → Any
    Annotations
      @native()
21.  def introspectToken(token: String, tokenType: String, handler: Handler[AsyncResult[AccessToken]]): OAuth2Auth

    Query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token.

    Query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. * @param token the access token (base64 string)

    tokenType

      hint to the token type e.g.: `access_token`

    handler

      A handler to receive the event

    returns

      self

22.  def introspectToken(token: String, handler: Handler[AsyncResult[AccessToken]]): OAuth2Auth

    Query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token.

    Query an OAuth 2.0 authorization server to determine the active state of an OAuth 2.0 token and to determine meta-information about this token. * @param token the access token (base64 string)

    handler

      A handler to receive the event

    returns

      self

23.  def introspectTokenFuture(token: String, tokenType: String): Future[AccessToken]

    Like introspectToken but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

24.  def introspectTokenFuture(token: String): Future[AccessToken]

    Like introspectToken but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

25.  final def isInstanceOf[T0]: Boolean
    Definition Classes
      Any
26.  def loadJWK(handler: Handler[AsyncResult[Unit]]): OAuth2Auth

    Loads a JWK Set from the remote provider.

    Loads a JWK Set from the remote provider.

    When calling this method several times, the loaded JWKs are updated in the underlying JWT object.

27.  def loadJWKFuture(): Future[Unit]

    Like loadJWK but returns a scala.concurrent.Future instead of taking an AsyncResultHandler.

28.  def missingKeyHandler(handler: Handler[String]): OAuth2Auth

    Handled to be called when a key (mentioned on a JWT) is missing from the current config.

    Handled to be called when a key (mentioned on a JWT) is missing from the current config. Users are advised to call io.vertx.scala.ext.auth.oauth2.OAuth2Auth#loadJWK but being careful to implement some rate limiting function.

    This method isn't generic for several reasons. The provider is not aware of the capabilities of the backend IdP in terms of max allowed API calls. Some validation could be done at the key id, which only the end user is aware of. * @return Future result.

29.  final def ne(arg0: AnyRef): Boolean
    Definition Classes
      AnyRef
30.  final def notify(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
31.  final def notifyAll(): Unit
    Definition Classes
      AnyRef
    Annotations
      @native()
32.  def rbacHandler(rbac: OAuth2RBAC): OAuth2Auth
33.  final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
      AnyRef
34.  def toString(): String
    Definition Classes
      AnyRef → Any
35.  final def wait(): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
36.  final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
      AnyRef
    Annotations
      @throws( ... )
37.  final def wait(arg0: Long): Unit
    Definition Classes
      AnyRef
    Annotations
      @native() @throws( ... )

### Inherited from AuthProvider

### Inherited from AnyRef

### Inherited from Any

### Ungrouped