Featured Posts

Sunday, October 3, 2010

Does User INTERNAL exists in Oracle 11g Release 2.

 

Before going forward to the User and access privileges and actual subject which was quoted above, I will talk about the Orapwd initially for a while. Every Database Administrator knows what is the use of  orapwd utility. I am not going put forward any thing repeatable but, let us look some new things about the information is transferred and from where we are getting …

Let’s see syntax and some important things to remember when we use the utility.

ORAPWD FILE=filename [ENTRIES=numusers] [FORCE={Y|N}] [IGNORECASE={Y|N}]

Argument Description

FILE

Name to assign to the password file. You must supply a complete path. If you supply only a file name, the file is written to the current directory.

ENTRIES

(Optional) Maximum number of entries (user accounts) to permit in the file.

FORCE

(Optional) If y, permits overwriting an existing password file.

IGNORECASE

(Optional) If y, passwords are treated as case-insensitive.

 

Sharing and Disabling the Password File

 

initialization parameter REMOTE_LOGIN_PASSWORDFILE to control whether or not a password file is shared among multiple Oracle Database instances. You can also use this parameter to disable password file authentication.

The following values are applicable for  the above parameter.

NONE, EXCLUSIVE (default) and SHARED.

Note;- If REMOTE_LOGIN_PASSWORDFILE is set to EXCLUSIVE or SHARED and the password file is missing, this is equivalent to setting REMOTE_LOGIN_PASSWORDFILE to NONE.

   1: SQL> desc v$pwfile_users
   2:  Name                                      Null?    Type
   3:  ----------------------------------------- -------- ----------------------------
   4:  USERNAME                                           VARCHAR2(30)
   5:  SYSDBA                                             VARCHAR2(5)
   6:  SYSOPER                                            VARCHAR2(5)
   7:  SYSASM                                             VARCHAR2(5)
   8:  
   9: SQL> select * from v$pwfile_users;
  10:  
  11: USERNAME                       SYSDB SYSOP SYSAS                                
  12: ------------------------------ ----- ----- -----                                
  13: SYS                            TRUE  TRUE  FALSE                                
  14: SCOTT                          TRUE  FALSE FALSE  

let us know  how this information is retrieved from kernel level tables


x$kzsrt – read as “[K]ernel [Z]Security layer  [R]emote Password File [T]able entries



   1: SQL> desc x$kzsrt
   2:  Name                                      Null?    Type
   3:  ----------------------------------------- -------- ------------------
   4:  ADDR                                               RAW(4)
   5:  INDX                                               NUMBER
   6:  INST_ID                                            NUMBER
   7:  USERNAME                                           VARCHAR2(30)
   8:  SYSDBA                                             NUMBER
   9:  SYSOPER                                            NUMBER
  10:  SYSASM                                             NUMBER
  11:  VALID                                              NUMBER

I have granted sysdba role to scott user and let us see the details from the v$pwfile_users.



   1:  
   2: SQL> select * from v$pwfile_users;
   3:  
   4: USERNAME                       SYSDB SYSOP SYSAS
   5: ------------------------------ ----- ----- -----
   6: SYS                            TRUE  TRUE  FALSE
   7: SCOTT                          TRUE  FALSE FALSE

So, we have two records, let us check the same from kernel level table x$kzsrt



   1: SQL> select count(*) from x$kzsrt;
   2:  
   3:   COUNT(*)
   4: ----------
   5:          3
   6:  
   7: SQL> select username,sysdba,sysoper,sysasm,valid from x$kzsrt;
   8:  
   9: USERNAME                           SYSDBA    SYSOPER     SYSASM      VALID
  10: ------------------------------ ---------- ---------- ---------- ----------
  11: INTERNAL                                1          1          0          1
  12: SYS                                     1          1          0          1
  13: SCOTT                                   1          0          0          1

If you check correct I have three records instead of two records. The User “INTERNAL” is by default available and its having  sysdba and sysoper role applicable to the User.


Let us try to login as Internal user


SQL> conn internal
Enter password:
ERROR:
ORA-09275: CONNECT INTERNAL is not a valid DBA connection


Try to refer to MOS - 172581.1 User Internal is de-supported, perhaps user still exists in Oracle Database 11g Release 2.  Let us in future how this is getting used and when and where…!!


Digg Google Bookmarks reddit Mixx StumbleUpon Technorati Yahoo! Buzz DesignFloat Delicious BlinkList Furl

0 comments: on "Does User INTERNAL exists in Oracle 11g Release 2."