The default SYSDBA password on Windows and MacOS is “masterkey” — or “masterke”, to be exact, because of the 8-character length limit.
Other users can acquire elevated privileges in several ways, some of which are dependent on the operating system platform. These are discussed in the sections that follow and are summarised in .
POSIX Hosts
On POSIX systems, including MacOSX, Firebird will interpret a POSIX user account as though it were a Firebird user account in its own security database, provided the server sees the client machine as a trusted host and the system user accounts exist on both the client and the server. To establish a “trusted” relationship with the client host, the corresponding entries must be included in one of the files /etc/hosts.equiv
or /etc/gds_hosts.equiv
on Firebird’s host server.
The file
gds_hosts.equiv
contains trusted relationships between Firebird hosts only.
The format is identical for both files and looks like this:
The SYSDBA
User on POSIX
On POSIX hosts, other than MacOSX, the user does not have a default password. If the full installation is done using the standard scripts, a one-off password will be created and stored in a text file in the same directory as security2.fdb
, commonly /opt/firebird/
. The name of the password file is SYSDBA.password
.
The root User
Windows Hosts
On Windows server-capable operating systems, operating system accounts can be used. Trusted Authentication must be enabled by setting the Authentication parameter to Trusted or Mixed in the configuration file, firebird.conf
.
Even with trusted authentication enabled, Windows operating system Administrators are not automatically granted SYSDBA privileges when they connect to a database. To make that happen, the internally-created role must be altered by SYSDBA or the database owner, to enable it. For details, refer to the later section entitled AUTO ADMIN MAPPING
.
The embedded version of Firebird server on Windows does not use server-level authentication. However, because objects within a database are subject to SQL privileges, a valid user name and, if applicable, a role, may be required in the connection parameters.
The Database Owner
The “owner” of a database is either the user who was CURRENT_USER
at the time of creation or, if the parameters USER
and PASSWORD
were supplied in the CREATE DATABASE
statement, the user cited there.