Package org.firebirdsql.management

## Interface UserManager

- All Superinterfaces:
    `AttachmentProperties`, `BaseProperties`, `ServiceConnectionProperties`, `ServiceManager`
  All Known Implementing Classes:
    `FBUserManager`

      public interface UserManager
      extends ServiceManager

  The base Firebird Service API functionality.
  Author:
    Steven Jardine

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `add​(User user)` | Add a user to the Firebird Security Database.
    `void` | `delete​(User user)` | Delete a user to the Firebird Security Database.
    `void` | `dropAdminRoleMapping()` | Drops AUTO ADMIN MAPPING from role RDB$ADMIN in security database
    `java.util.Map<java.lang.String,​User>` | `getUsers()` | Return all valid users in the Firebird Security Database.
    `void` | `setAdminRoleMapping()` | Sets AUTO ADMIN MAPPING for role RDB$ADMIN in security database
    `void` | `setSecurityDatabase​(java.lang.String securityDatabase)` | Sets the security database and therefore overrides the per default used security database (e.g.
    `void` | `update​(User user)` | Update a user to the Firebird Security Database.

    - ### Methods inherited from interface org.firebirdsql.jaybird.props.AttachmentProperties

      `getAuthPlugins, getCharSet, getConnectTimeout, getDbCryptConfig, getEncoding, getPassword, getPortNumber, getProcessId, getProcessName, getRoleName, getServerName, getSocketBufferSize, getSoTimeout, getType, getUser, getWireCrypt, isWireCompression, setAuthPlugins, setCharSet, setConnectTimeout, setDbCryptConfig, setEncoding, setPassword, setPortNumber, setProcessId, setProcessName, setRoleName, setServerName, setSocketBufferSize, setSoTimeout, setType, setUser, setWireCompression, setWireCrypt`

    - ### Methods inherited from interface org.firebirdsql.jaybird.props.BaseProperties

      `connectionPropertyValues, getBooleanProperty, getBooleanProperty, getIntProperty, getIntProperty, getProperty, getProperty, setBooleanProperty, setIntProperty, setProperty`

    - ### Methods inherited from interface org.firebirdsql.jaybird.props.ServiceConnectionProperties

      `getExpectedDb, getServiceName, setExpectedDb, setServiceName`

    - ### Methods inherited from interface org.firebirdsql.management.ServiceManager

      `getDatabase, getHost, getLogger, getPort, getServerVersion, getWireCryptAsEnum, setDatabase, setHost, setLogger, setPort, setWireCryptAsEnum`

- - ### Method Detail

    - #### add

          void add​(User user)
            throws java.sql.SQLException,
                   java.io.IOException

      Add a user to the Firebird Security Database.
      Parameters:
        `user` - to the Firebird Security Database.
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`

    - #### delete

          void delete​(User user)
               throws java.sql.SQLException,
                      java.io.IOException

      Delete a user to the Firebird Security Database.
      Parameters:
        `user` - to the Firebird Security Database.
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`

    - #### update

          void update​(User user)
               throws java.sql.SQLException,
                      java.io.IOException

      Update a user to the Firebird Security Database.
      Parameters:
        `user` - to the Firebird Security Database.
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`

    - #### getUsers

          java.util.Map<java.lang.String,​User> getUsers()
                                                       throws java.sql.SQLException,
                                                              java.io.IOException

      Return all valid users in the Firebird Security Database.
      Returns:
        all valid users in the Firebird Security Database.
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`

    - #### setSecurityDatabase

          void setSecurityDatabase​(java.lang.String securityDatabase)

      Sets the security database and therefore overrides the per default used security database (e.g. security2.fdb)

      Supported since Firebird 2.1
      Parameters:
        `securityDatabase` - name/path of securityDatabase

    - #### setAdminRoleMapping

          void setAdminRoleMapping()
                            throws java.sql.SQLException,
                                   java.io.IOException

      Sets AUTO ADMIN MAPPING for role RDB$ADMIN in security database
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`

    - #### dropAdminRoleMapping

          void dropAdminRoleMapping()
                             throws java.sql.SQLException,
                                    java.io.IOException

      Drops AUTO ADMIN MAPPING from role RDB$ADMIN in security database
      Throws:
        `java.sql.SQLException`
        `java.io.IOException`