Class JDBCAuth


  • public class JDBCAuth
    extends AuthProvider
    Factory interface for creating AuthenticationProvider 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.

    NOTE: This class has been automatically generated from the original non RX-ified interface using Vert.x codegen.

    • Field Detail

      • DEFAULT_AUTHENTICATE_QUERY

        public static final String DEFAULT_AUTHENTICATE_QUERY
        The default query to be used for authentication
        See Also:
        Constant Field Values
      • DEFAULT_ROLES_QUERY

        public static final String DEFAULT_ROLES_QUERY
        The default query to retrieve all roles for the user
        See Also:
        Constant Field Values
      • DEFAULT_PERMISSIONS_QUERY

        public static final String DEFAULT_PERMISSIONS_QUERY
        The default query to retrieve all permissions for the role
        See Also:
        Constant Field Values
    • Constructor Detail

      • JDBCAuth

        public JDBCAuth​(JDBCAuth delegate)
      • JDBCAuth

        public JDBCAuth​(Object delegate)
    • Method Detail

      • create

        @Deprecated
        public static JDBCAuth create​(Vertx vertx,
                                      JDBCClient client)
        Deprecated.
        Create a JDBC auth provider implementation
        Parameters:
        vertx -
        client - the JDBC client instance
        Returns:
        the auth provider
      • setAuthenticationQuery

        @Deprecated
        public JDBCAuth setAuthenticationQuery​(String authenticationQuery)
        Deprecated.
        Set the authentication query to use. Use this if you want to override the default authentication query.
        Parameters:
        authenticationQuery - the authentication query
        Returns:
        a reference to this for fluency
      • setRolesQuery

        @Deprecated
        public JDBCAuth setRolesQuery​(String rolesQuery)
        Deprecated.
        Set the roles query to use. Use this if you want to override the default roles query.
        Parameters:
        rolesQuery - the roles query
        Returns:
        a reference to this for fluency
      • setPermissionsQuery

        @Deprecated
        public JDBCAuth setPermissionsQuery​(String permissionsQuery)
        Deprecated.
        Set the permissions query to use. Use this if you want to override the default permissions query.
        Parameters:
        permissionsQuery - the permissions query
        Returns:
        a reference to this for fluency
      • setRolePrefix

        @Deprecated
        public JDBCAuth setRolePrefix​(String rolePrefix)
        Deprecated.
        Set the role prefix to distinguish from permissions when checking for isPermitted requests.
        Parameters:
        rolePrefix - a Prefix e.g.: "role:"
        Returns:
        a reference to this for fluency
      • computeHash

        @Deprecated
        public String computeHash​(String password,
                                  String salt)
        Deprecated.
        Compute the hashed password given the unhashed password and the salt without nonce The implementation relays to the JDBCHashStrategy provided.
        Parameters:
        password - the unhashed password
        salt - the salt
        Returns:
        the hashed password
      • computeHash

        @Deprecated
        public String computeHash​(String password,
                                  String salt,
                                  int version)
        Deprecated.
        Compute the hashed password given the unhashed password and the salt The implementation relays to the JDBCHashStrategy provided.
        Parameters:
        password - the unhashed password
        salt - the salt
        version - the nonce version to use
        Returns:
        the hashed password
      • generateSalt

        @Deprecated
        public String generateSalt()
        Deprecated.
        Compute a salt string. The implementation relays to the JDBCHashStrategy provided.
        Returns:
        a non null salt value
      • setNonces

        @Deprecated
        public JDBCAuth setNonces​(JsonArray nonces)
        Deprecated.
        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.
        Parameters:
        nonces - a List of non null Strings.
        Returns:
        a reference to this for fluency