Document ID:        45491.1
Subject:            OPS$ LOGINS FROM WIN 95
Last Modified:      29 Apr 97 
Author:             FVAYANI


This note is about connecting to a database server from a win 95 PC using
Operating system authentication. (OPS$)

Q.   What are OPS$ accounts?

A.   OPS$ accounts are a way to use operating-system userids as the
     basis for ORACLE usernames.  This provides the advantage of not
     having to provide (another) userid and password to connect to an
     ORACLE database once the client has logged in to the operating
     system where the ORACLE database is running.  Instead of users being
     authenticated by Oracle, users are authenticated by the operating
     system.

The following are the steps to follow:

SERVER SIDE:

     1.  Define the OS_AUTHENT_PREFIX parameter in the init.ora to define
         the prefix used in the Oracle usernames:

         OS_AUTHENT_PREFIX=OPS$

         The default value of this parameter is "OPS$" for backward
         compatibility with previous versions of Oracle where the prefix
         had to be "OPS$".  You may set the prefix to a null string (an empty
         set of double quotes:"") so that Oracle usernames exactly match the
         operating system usernames.

     2.  Set the REMOTE_OS_AUTHENT parameter to TRUE in the init.ora:

         REMOTE_OS_AUTHENT=TRUE

     3.  Create the Oracle user with the CREATE USER command.  For the
         IDENTIFIED keyword, you may specify either "EXTERNALLY" or
         "BY ".  If you specify a password, you have the option
         to log onto the database using either operating system
         authentication or database authentication with the Oracle password.
         If you specify "IDENTIFIED EXTERNALLY", you will have to use
         operating system authentication to connect to the Oracle database.
         Example:

         CREATE USER OPS$SCOTT IDENTIFIED EXTERNALLY...

         CREATE USER OPS$SCOTT IDENTIFIED BY TIGER...

         Be sure to also grant this user the CONNECT system privilege.

CLIENT SIDE: (16 BIT CLIENT S/W E.G. SQLPLUS)

     1.  Set the Username= i.e. db username in Oracle.ini file.

     2.  Open up the Client Software e.g. sqlplus enter "/" WITHOUT COMMAS
         as the Username, leaving the Password Field Blank then type in the
         appropriate Connect String.

CLIENT SIDE: (32 BIT CLIENT S/W E.G. SQLPLUS)

     1.  In Win 95, Click on Start point to Settings then select Control Panel.

     2.  In Control Panel, Double Click on the Password icon.

     3.  In Password Properties Select the User Profiles Tab then click on the
         second radio button (User can customize their preferences......)
         to enable/select it.

     4.  Say Yes to restart the computer when prompted.

     5.  After restarting Enter the New Username (this must be same as the
         DB Username), Choose any Password you like, Say Yes to the Windows
         Networking Message, Confirm your Password When Prompted.

     6.  The above will create your User Profile and can be used to create as
         many profiles as required, hence one or more user can connect to the DB
         using Operating System OPS$ authentication from the same machine.

     7.  Open up the Client Software e.g. sqlplus enter "/" WITHOUT COMMAS
         as the Username, leaving the Password Field Blank then type in the
         appropriate Connect String.

PROBLEMS:

Q: After following the above steps you receive and invalid username/password;
   logon denied error?

A1:Make sure that you have set OS_AUTHENT_PREFIX=OPS$ in the init.ora file
   and the Username to Username only not OPS$Username. This applies to both
   16/32bit. If using 16 bit check oracle.ini Username=, If running 32 bit
   Create another Profile using the Username should be same as your DB Username.

A2:If you wish your Username to be OPS$Username then Make sure that you have
set
   OS_AUTHENT_PREFIX= ""  in the init.ora file.