Re: ops$ account and OCILogon

From: Frank <fvanbortel_at_netscape.net>
Date: Wed, 02 Apr 2003 21:01:48 +0200
Message-ID: <3E8B339C.3040008_at_netscape.net>


John Spear wrote:
> I have a database with ops$ enabled in init.ora
> os_authent_prefix = "ops$"
> remote_os_authent = true
>
> I have in sqlnet.ora
> sqlnet.authentication_services = all

Which means what?
>
> In sqlplus I am able to do
> sqlplus /_at_dbname and I am able to login without a password.
>

On the server, I assume, being logged on (OS level) as a user that is a member of the ORADBA group. Mind you, this is a special case, and has *nothing* to do this your ops$ accounts.

> However in a C program using OCILogon if I use
> user = /
> passwd = null and
> dbanme = dbname
> I get oracle error 'null password supplied' ORA-01005
>

Same conditions as above? User logged on to the server as member of ORADBA?

> How should this be done ?

Create an externally identified user:
Connected to:
Oracle8i Enterprise Edition Release 8.1.7.4.0 - Production With the Partitioning option
JServer Release 8.1.7.4.0 - Production

SQL> show parameter os_aut

NAME                                 TYPE    VALUE
------------------------------------ ------- ------------------------------
os_authent_prefix                    string
remote_os_authent                    boolean TRUE

SQL> create user oracle default tablespace users identified externally; User created.
...
[oracle_at_csrh01 oracle]$ sqlplus /

SQL*Plus: Release 8.1.7.0.0 - Production on Wed Apr 2 21:09:02 2003

(c) Copyright 2000 Oracle Corporation. All rights reserved.

ERROR:
ORA-01045: user ORACLE lacks CREATE SESSION privilege; logon denied

See? user oracle tries to logon...

-- 
Regards, Frank van Bortel
Received on Wed Apr 02 2003 - 21:01:48 CEST

Original text of this message