Defining database users

Until version 11.70.xC2, Informix® database users must be created at the operating system level and must be members of the 'informix' group. Starting with 11.70.xC2, Informix supports database-only users with the CREATE USER instruction, as in most other db servers. Any database user must have sufficient privileges to connect and use resources of the database; user rights are defined with the GRANT command.

ORACLE users must be created in the database with a CREATE USER command. Oracle supports different types of user authentications. The following command defines a user authenticated by the database server (must give username and password to connect):

CREATE USER username IDENTIFIED BY password

Users defined at the operating system level can be declared as ORACLE users with the "IDENTIFIED EXTERNALLY" clause:

CREATE USER OPS$username IDENTIFIED EXTERNALLY

In this case, ORACLE trusts the operating system, and users can connect to the database without giving any user name and password.

By default, database users authenticated by the operating systems have a name with the "OPS$" prefix. The 'OPS$' prefix can be changed with the OS_AUTHENT_PREFIX server parameter. You can set this parameter to blank ("") in order to use the same user names in the system and in the ORACLE database. See the ORACLE documentation ( "Server Administrators Guide", "User authentication" ) for more details.

When creating a user with OS authentication, the user name in the database must be in uppercase letters, even if the OS user name is lowercase.

For Windows NT™ operating system authentication to work, the SQLNET.AUTHENTICATION_SERVICES parameter must be set as follows in %ORACLE_HOME%\NETWORK\ADMIN\SQLNET.ORA:

SQLNET.AUTHENTICATION_SERVICES = (NTS)

Solution

Based on the application logic (is it a multiuser application ?), you must create one or several ORACLE users. As Informix users are operating system users, we recommend that you use the OS authentication services offered by ORACLE.