class JDBCAuth extends AuthProvider
Factory interface for creating io.vertx.scala.ext.auth.AuthProvider instances that use the Vert.x JDBC client.
By default the hashing strategy is SHA-512. If you're already running in production this is backwards compatible, however for new deployments or security upgrades it is recommended to use the PBKDF2 strategy as it is the current OWASP recommendation for password storage.
- Alphabetic
- By Inheritance
- JDBCAuth
- AuthProvider
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-  new JDBCAuth(_asJava: AnyRef)
Value Members
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        !=(arg0: Any): Boolean
      
      
      - Definition Classes
- AnyRef → Any
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        ##(): Int
      
      
      - Definition Classes
- AnyRef → Any
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        ==(arg0: Any): Boolean
      
      
      - Definition Classes
- AnyRef → Any
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        asInstanceOf[T0]: T0
      
      
      - Definition Classes
- Any
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        asJava: AnyRef
      
      
      - Definition Classes
- AuthProvider
 
- 
      
      
      
        
      
    
      
        
        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
 
- 
      
      
      
        
      
    
      
        
        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
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        clone(): AnyRef
      
      
      - Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        computeHash(password: String, salt: String, version: Int): String
      
      
      Compute the hashed password given the unhashed password and the salt Compute the hashed password given the unhashed password and the salt The implementation relays to the JDBCHashStrategy provided. * @param password the unhashed password - salt
- the salt 
- version
- the nonce version to use 
- returns
- the hashed password 
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        computeHash(password: String, salt: String): String
      
      
      Compute the hashed password given the unhashed password and the salt without nonce Compute the hashed password given the unhashed password and the salt without nonce The implementation relays to the JDBCHashStrategy provided. * @param password the unhashed password - salt
- the salt 
- returns
- the hashed password 
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        eq(arg0: AnyRef): Boolean
      
      
      - Definition Classes
- AnyRef
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        equals(arg0: Any): Boolean
      
      
      - Definition Classes
- AnyRef → Any
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        finalize(): Unit
      
      
      - Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        generateSalt(): String
      
      
      Compute a salt string. Compute a salt string. The implementation relays to the JDBCHashStrategy provided. * @return a non null salt value 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        getClass(): Class[_]
      
      
      - Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        hashCode(): Int
      
      
      - Definition Classes
- AnyRef → Any
- Annotations
- @native()
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        isInstanceOf[T0]: Boolean
      
      
      - Definition Classes
- Any
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        ne(arg0: AnyRef): Boolean
      
      
      - Definition Classes
- AnyRef
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        notify(): Unit
      
      
      - Definition Classes
- AnyRef
- Annotations
- @native()
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        notifyAll(): Unit
      
      
      - Definition Classes
- AnyRef
- Annotations
- @native()
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        setAuthenticationQuery(authenticationQuery: String): JDBCAuth
      
      
      Set the authentication query to use. Set the authentication query to use. Use this if you want to override the default authentication query. * @param authenticationQuery the authentication query - returns
- a reference to this for fluency 
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        setNonces(nonces: JsonArray): JDBCAuth
      
      
      Provide a application configuration level on hash nonce's as a ordered list of nonces where each position corresponds to a version. Provide a application configuration level on hash nonce's as a ordered list of nonces where each position corresponds to a version. The nonces are supposed not to be stored in the underlying jdbc storage but to be provided as a application configuration. The idea is to add one extra variable to the hash function in order to make breaking the passwords using rainbow tables or precomputed hashes harder. Leaving the attacker only with the brute force approach. The implementation relays to the JDBCHashStrategy provided. * @param nonces a List of non null Strings. - returns
- a reference to this for fluency 
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        setPermissionsQuery(permissionsQuery: String): JDBCAuth
      
      
      Set the permissions query to use. Set the permissions query to use. Use this if you want to override the default permissions query. * @param permissionsQuery the permissions query - returns
- a reference to this for fluency 
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        setRolePrefix(rolePrefix: String): JDBCAuth
      
      
      Set the role prefix to distinguish from permissions when checking for isPermitted requests. Set the role prefix to distinguish from permissions when checking for isPermitted requests. * @param rolePrefix a Prefix e.g.: "role:" - returns
- a reference to this for fluency 
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        setRolesQuery(rolesQuery: String): JDBCAuth
      
      
      Set the roles query to use. Set the roles query to use. Use this if you want to override the default roles query. * @param rolesQuery the roles query - returns
- a reference to this for fluency 
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        synchronized[T0](arg0: ⇒ T0): T0
      
      
      - Definition Classes
- AnyRef
 
- 
      
      
      
        
      
    
      
        
        def
      
      
        toString(): String
      
      
      - Definition Classes
- AnyRef → Any
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(): Unit
      
      
      - Definition Classes
- AnyRef
- Annotations
- @throws( ... )
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long, arg1: Int): Unit
      
      
      - Definition Classes
- AnyRef
- Annotations
- @throws( ... )
 
- 
      
      
      
        
      
    
      
        final 
        def
      
      
        wait(arg0: Long): Unit
      
      
      - Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )