반응형

화면 배경과 색 변경하기


시작 -> 실행 -> regedit


아래 레지스트리 값에 cmd 창 배경/글자의 기본색 값이 저장 되어 있습니다. 아래 위치로 이동 하여 DefaultColor 값을 0으로 설정 합니다. (0 - command 의 원래 기본 값)

 

  • HKEY_CURRENT_USER\Software\Microsoft\Command Processor
    DefaultColor :  0  

[참고]

위 DefaultColor 값에 command 창의 기본 색을 지정 할 수 있습니다.

색 속성은 두자리의 16진수로 지정 되며, 첫째 자리는 배경색에 해당되고 둘째 자리는 문자색에 해당됩니다. 각 자리 수는 다음 값이 될 수 있습니다.

 

 0 = 검정색       8 = 회색
 1 = 파랑색       9 = 연한 파랑색
 2 = 초록색       A = 연한 초록색
 3 = 옥색         B = 연한 옥색
 4 = 빨강색       C = 연한 빨강색
 5 = 자주색       D = 연한 자주색
 6 = 노랑색       E = 연한 노랑색
 7 = 흰색         F = 밝은 흰색

 

예로,  레지스트리 defaultcolor 값에 fc 을 입력 하여 저장 하면 밝은 흰색 위에 연한 빨간색의 문자색을 나타냅니다.

 

명령 프롬프트에서 명령어로는 color 명령어를 사용 합니다.


출처 : http://answers.microsoft.com/ko-kr/windows/forum/windows_7-performance/cmdexe-%EC%9D%98/0e453f64-f512-4f23-83f6-b96f5fc684da?msgId=162ee89e-3ce4-4d91-a3d5-e27fb9261fb1


+ 알파!


위 내역은 레지스트리를 통한 화면내의 색과 글자 색 변경 방법이며,


이외의 모든 설정은 


시작 -> 실행 -> cmd


좌측 상단에 마우스 우클릭 -> 속성 클릭





아래는 내가 직접 설정한 화면임.










cmd 창에 제목을 바꿀때는


c:\>title [바꿀제목]


ex -> c:\> title 도스화면


화면 크기를 명령어로 조정


c:\> mode con cols=컬럼숫자값 lines=라인숫자값


ex -> c:\> mode con cols=150 lines=250


반응형

'OS' 카테고리의 다른 글

net 명령어  (0) 2014.11.13
폴더 계정별 권한 부여하기  (0) 2014.11.13
무한 반복 BAT 파일 만들기  (0) 2012.05.14
반응형

하나의 포트로 여러 리스너 설정하기...


listener.ora


일부 서버들에서 되고 안되고 문제는 SID_LIST_LISTENER 설정에서 SID_DESC 설정 정보가 없을 때 발생함... (랜덤 -_-ㅋ)


 # listener.ora Network Configuration File: /oracle/product/10g/network/admin/listener.ora

# Generated by Oracle configuration tools.


SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = PLSExtProc)

      (ORACLE_HOME = /oracle/product/10g)

      (PROGRAM = extproc)

    )

    (SID_DESC =

      (SID_NAME = SEVSEDEV)

      (ORACLE_HOME = /oracle/product/10g)

    )

    (SID_DESC =

      (SID_NAME = SEVPTDEV)

      (ORACLE_HOME = /oracle/product/10g)

    )

  )


LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.86)(PORT = 1521))

      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC0))

    )

  )


SID_LIST_LISTENER_SEVPTDEV =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = SEVPTDEV)

      (ORACLE_HOME = /oracle/product/10g)

    )

  )


LISTENER_SEVPTDEV =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.86)(PORT = 1521))

    )

  )


SID_LIST_LISTENER_SEVSEDEV =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME = SEVSEDEV)

      (ORACLE_HOME = /oracle/product/10g)

    )

  )


LISTENER_SEVSEDEV =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.86)(PORT = 1521))

    )

  )


 sqlnet.ora


# sqlnet.ora Network Configuration File: /oracle/product/10g/network/admin/sqlnet.ora

# Generated by Oracle configuration tools.

SQLNET.INBOUND_CONNECT_TIMEOUT=0 





반응형
반응형

Home 초과 버젼 에서는

제어판>관리도구>로컬보안정책>로컬정책>보안옵션>네트워크보안 LAN Manager 에서

“LM 및 NTLM 응답보내기” 로 설정

물론... 보안정책은 secpol.msc 명령을 통해 한번에 고고싱도 가능함.



Home 버젼에서는...

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

32bit Dword 값으로 LmCompatibilityLevel  생성후

값을 1로 세팅한다.(관련 레지스트리는 파일 첨부)

반응형

'Windows' 카테고리의 다른 글

윈도우즈 업데이트 오류  (0) 2012.02.15
Windows Dump 분석하기  (0) 2012.01.20
윈도우 7 정품인증  (0) 2011.04.22
터미널 서비스 포트 변경 방법  (0) 2011.01.03
XP에서 Mac 주소 변경하기  (0) 2010.12.06
반응형


NetDrive란...

비상업적 용도로 무료로 사용 가능한 FTP Server를 연결하여

내컴퓨터의 네트워크 연결로 지정가능한 프로그램이다.

뭔말인고 하니...

일반적인 FTP 서버로의 접속은 파일을 download한 다음 내용을 보고 수정뒤 upload 처리과정을

직접 처리해 줘야 하나...

NetDrvie를 설치하면 c: 나 d: 의 로컬 디스크에 있는것 처럼 사용 가능하다.

1. download : http://www.netdrive.net

2. 설치 방법
   NetDrive-Setup.exe를 두번 클릭시 모두 다음다음 다음완료

3. 설정 방법
   - 새사이트 클릭
     1 : 표시될 이름을 입력
     2 : 사이트 주소를 입력한다. ex ) 192.192.1.1 (FTP 서버의 주소를 입력한다.)
     3 : 포트 기본 21번이다.
     4 : 드라이브는 로컬에 지정될 드라이브 명을 선택하면 된다.
     5 : 사용자 id (FTP 서버의 접속 ID를 입력한다.)
     6 : 비밀번호 (FTP 서버의 접속 ID에 대한 비밀번호를 입력한다.)

* 오류로그 확인 방법 : c:\ndsvc.txt

ftp는 active 모드와 passive 모드 두가를 지원한다
혹 dos 창이나 알 ftp 에서는 잘 연결되었으나 안될 경우에는
아래의 passive 옵션을 off 한다.


 

반응형

'UTILITY' 카테고리의 다른 글

외장 장치 쓰기 금지 미디어 일때 사용방법  (0) 2011.07.23
Acroedit 소개  (0) 2011.06.28
웹 개발에 유용한 프로그램 모음  (0) 2011.06.14
토드 초기화 하기  (0) 2011.03.28
파수 관련 autoit 작성 코드  (0) 2011.03.10
반응형

환경 : tomcat


-> log4sql.jar 파일을

tomcat root / common / lib 밑으로 복사

환경 설정 정보를 보고 싶다면... jar파일을 열어서 보면

core/log/log4sql_configuration.properties 파일의 환경을 수정하면 된다...

이클립스 상에 서버 설정의 Server.xml 파일을 열어
초기 설정 값을 -> 변경설정으로 사용 드라이버 변경

 초기 설정
 <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver"


 변경 설정
 <Resource auth="Container"  driverClassName="core.log.jdbc.driver.OracleDriver"


Server 를 실행하고 console 로그를 열어보면

/**P*/ 와 같이 분석은 되나...

PL/SQL은 안되는것 같다... -_-... 우린 거의다 PL/SQL인디... -_-ㅋ

즉, 1 row를 insert 하였고, 실행시간은 00.000 -> 측정이 그닥... 후후 너무 빨라서 그런건가 -_-ㅋ




<2011-04-21 10:52:09.458><INFO ><INSERT INTO ACCESS_LOG( PRG_CD, LOGIN_ID, ACCESS_TIME, PROCESS, METHOD, RETURN_JSP, ACCESS_IP )
VALUES('mbs,'mb14',sysdate,'/mbs/mbs.InfoX.do','LIST','/mbr/MbrInfo.jsp','127.0.0.1')>
[2011-04-21 10:52:09] [DEBUG]『msb.service.process.sys.AuthManager:execute(174)』 Elapsed Time [0:00:00.000]
INSERT INTO ACCESS_LOG( PRG_CD, LOGIN_ID, ACCESS_TIME, PROCESS, METHOD, RETURN_JSP, ACCESS_IP )
VALUES( 'mbs' /**P*/, 'mb14' /**P*/,sysdate, '/mbs/mbs.InfoX.do' /**P*/, 'LIST' /**P*/, '/mbr/MbrInfo.jsp' /**P*/, '127.0.0.1' /**P*/)
Query Result[INSERT]: 1row

반응형

'Database' 카테고리의 다른 글

무료 DB 접근 툴  (0) 2019.08.19
무료 ERD 툴 ERMASTER  (0) 2019.08.08
damo 암호화 컬럼 복원시 주의사항  (0) 2017.08.20
Sybase IQ Administrator 사용 Script  (0) 2012.10.18
SQL LITE 사용 프로그램  (0) 2010.04.14
반응형

IBM JVM의 heap 영역에는 LOA(Large Object Area)라는 영역이 있다.

기본적으로 전체 Heap size의 5%를 차지하는데, AP의 특성상 비교적 큰 객체(5MB이상)의 생성이

빈번한 경우에는 이 영역을 늘려줄 필요가 있다.

-Xloratio0.3

위와 같이 옵션을 적용하면 Java Heap 메모리중 LOA영역을 30% 잡게 된다.

위 옵션적용에 따른 GC로그 형태 변화는 다음과 같다.

1) 일반적으로 Heap 메모리만 설정한 경우
      위에서와 같이 전체 Java Heap 메모리와 free Heap 메모리만 나옵니다.
 jeusic@dtotch1[TEST] /sw/jeusic> java -verbose:gc -Xms64m -Xmx64m  a            
[ JVMST080: verbosegc is enabled ]
[ JVMST082: -verbose:gc output will be written to stderr ]
  <GC[0]: Expanded System Heap by 65536 bytes
  <GC(1): GC cycle started Tue Jun 12 10:32:59 2007
  <GC(1): freed 269696 bytes, 98% free (66059528/67041792), in 14 ms>
  <GC(1): mark: 7 ms, sweep: 1 ms, compact: 6 ms>
  <GC(1): refs: soft 0 (age >= 32), weak 0, final 1, phantom 0>
  <GC(1): moved 4571 objects, 489408 bytes, reason=4>
 
 
 
  2) -Xratio 옵션 적용한 경우
      위에서와 같이 전체 Java Heap 메모리와 free Heap 메모리이외에 LOA영역이 별도로 나옵니다.
 
jeusic@dtotch1[TEST] /sw/jeusic> java -verbose:gc -Xms64m -Xmx64m  -Xloratio0.2 a
[ JVMST080: verbosegc is enabled ]
[ JVMST082: -verbose:gc output will be written to stderr ]
  <GC[0]: Expanded System Heap by 65536 bytes
  <GC(1): GC cycle started Tue Jun 12 10:33:35 2007
  <GC(1): heap layout: (52651168/53633432) (13408360/13408360)  /0><== LOA 영역 별도 표시
  <GC(1): freed 269696 bytes, 98% free (66059528/67041792), in 14 ms>
  <GC(1): mark: 6 ms, sweep: 2 ms, compact: 6 ms>
  <GC(1): refs: soft 0 (age >= 32), weak 0, final 1, phantom 0>
  <GC(1): moved 4571 objects, 489408 bytes, reason=4>

Heap 메모리가 충분한대도 GC가 빈번하게 일어나고 있고,
또한 비교적 큰 객체(5MB정도)를 생성할때 빈번하게 Allocation Failure 가 일어나는 경우에
-Xratio 옵션을 적용하면 문제를 해결 할 수 있다.

 

 

출처 : http://ijbaek.tistory.com

반응형

'OS > AIX' 카테고리의 다른 글

AIX VNC 설정하기  (2) 2012.07.26
AIX 칩입 확인 해보자 !  (0) 2011.03.23
날짜 관련 얻기  (0) 2011.03.02
AIX 5.3 OPENSSH INSTALL  (0) 2011.02.16
bff 파일 설치 (AIX)  (0) 2010.12.08
반응형

가이드에는 <database> 안에 <encryption>암호..</encryption> 으로 지정되어 있으나...

제길슨...

안먹어... jeus5는 모르는 child 원소란다 -_-ㅋ

아놔...


 찾아보니

<password>tiger</password>

값이

base64일 경우
<password>{base64}dGlnZXI=</password>

형태로 변경적용 하면 된다.


특정 값을 암호화 하는 방법은

 jeus 계정으로

$> encryption base64 tiger

하면
[base64] : [tiger] --> [encode:dGlnZXI=]
[base64] : [dGlnZXI=] --> [decode:tiger]


적용가능한 암호화 알고리즘
- base64
  많이 쓰이나 암호화와 복호화가 쉬움.
   또한 복호화 툴이 많이... 2초면 복호화..

- SHA
  해쉬 암호화 방식 (중간 유추가 안되고)
   입력 A -> 해쉬함수 -> XADDD (값이라면)
   비교시 값을 입력받아 똑같이 해쉬 결과값을 비교하는 방식 비교적 안전

- DES
- DESede
- AES
- SEED
- Blowfish




반응형

'WAS > JEUS' 카테고리의 다른 글

제우스에서 log4sql 사용하기  (0) 2011.03.15
JEUS 5 세션 공유  (0) 2011.03.09
IBM JVM 튜닝 - 3  (0) 2009.08.24
제우스 환경 설정 부분  (0) 2009.03.05
JAVA HEAPDUMP 분석방법  (0) 2009.03.05
반응형


파일명.cmd 로 실행가능함

역할

1. PC 주소와 IP 세팅을 함.
2. reg add -> 레지스트리 정보에 위치시킴
3. netsh -> 정보 세팅

@Echo Off
Title CMD창에서 컴퓨터 이름 변경 (고정) by dr.jk & Mode Con Cols=47 Lines=9&SetLocal

:NameApply
Set PCName=1번피씨

Reg Add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters /V "NV Hostname" /D %PCName% /F > Nul
REG ADD HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName /V "ComputerName" /D %PCName% /F > Nul

Netsh -c Int Ip Set Address Name="로컬 영역 연결" Static 192.168.0.10 255.255.255.0 192.168.0.1 0
Netsh -c Int Ip Set DNS Name="로컬 영역 연결" Static 192.168.0.1 Primary
Netsh -c Int Ip Add DNS Name="로컬 영역 연결" 168.126.63.1 2
Goto End

:End
EndLocal

반응형
반응형

* 폼 필드 설정
ADOBE ACROBAT 에서

애크로뱃8 프로페셔널의 폼 필드에서 사용할 수 있는 설정 탭에 대한 개략적인 설명이다.

General 탭. 이 탭은 모든 타입의 기본이 된다.
이 탭의 대화상자에 이름과 툴팁을 넣고 필드를 보여줄지 여부도 결정한다. 추가적으로, 필드가 꼭 필요한지(즉 항목 기입이 필수인지) 또는 필드가 읽기 전용인지를 조건으로 지정한다. 예를 들면, 사용자의 이름 필드를 꼭 입력하도록 하거나 계산된 텍스트 필드를 읽기 전용으로 지정할 수 있다.

Appearance 탭. 이 탭의 대화상자에 이름과 툴팁을 넣고 필드를 보여줄지 여부도 결정한다.
추가적으로, 필드가 꼭 필요한지(즉 항목 기입이 필수인지) 또는 필드가 읽기 전용인지를 조건으로 지정한다. 예를 들면, 사용자의 이름 필드를 꼭 입력하도록 하거나 계산된 텍스트 필드를 읽기 전용으로 지정할 수 있다.

Options 탭. 모든 폼 필드에는 옵션 탭이 있다.
필드의 종류에 따라 내용은 달라진다. 버튼을 예로 들면, 디스플레이를 위한 라벨과 이미지를 선택할 수 있는 옵션이 있다. 체크박스 필드는 체크마크나 별표 같은 오브젝트의 겉모습을 선택할 수 있으며 콤보 박스와 리스트 박스는 아이템리스트를 넣을 수 있는 공간을 가지고 있으며 라디오 버튼 필드는 버튼의 스타일을 자동 선택 여부와 관계없이(figure 1) 선택할 수 있도록 하고 있다.

Actions 탭. 모든 폼 필드에는 이 탭이 있으며 모든 타입에서 비슷하게 동작하는 것처럼 보인다. 액션들은 애크로뱃이 몇몇 인터렉션에 반응해 수행하는 동작들이다. 예를 들면, 버튼을 누름에 따라 다른 문서를 열 수 있고 숫자를 폼 필드에 입력하여 그 계산 결과를 나타내는 것은 액션이다.


Figure 1:
라디오 버튼 모양 같은 필드타입에 대한 옵션을 고른다 .



Format 탭. 텍스트 박스나 콤보 박스 필드 같은 폼 필드 타입은 속성 대화상자에 포맷 탭을 가지고 있다. 필드에서 사용자가 입력하는 텍스트에 적용하는 포맷팅 카테고리의 타입을 선택할 수 있다. 포맷팅은 숫자부터 화폐 단위, 날자까지(Figure 2) 다양하게 범위를 정할 수 있다.


Figure 2: 폼 탭에서 사용자 입력을 허용하는 필드에 텍스트 모양을 설정한다.


Validate 탭. 필드에서 사용자 입력을 제한할 수 있다.
예를 들면 텍스트 박스나 콤보 박스 필드에 숫자나 문자를 입력하는 것 등이 있다. 대화상자에서
옵션을 선택하거나 자바스크립트 검증(validation) 스크립트 사용을 선택할 수 있다.

Calculate 탭. 대화상자의 탭을 사용하여 함수 계산도 수행한다.

Selection Change 탭. 이 탭은 리스트 박스 속성에서만 볼 수 있다.
리스트 박스에서 선택 변경이 있을 경우의 반응을 설정해 놓을 수 있다.


접근성 고려

여러 상황에서 폼이 접근성(accessibility) 기준을 따르도록 하는 것에 유의해야 한다. 스크린리더와 다른 장치간의 올바른 커뮤니케이션을 유지하는 것이 접근성의 주요 기능 중 하나다. 폼 필드의 속성 대화상자를 열고 General 탭의 툴팁에 “당신의 생일”과 같은 간단한 인스트럭션을 입력한다.
툴팁이 없으면, 스크린리더는 폼 필드의 타입만 말하여 사용자가 그 내용을 이해할 수 없게 된다.


간편한 폼 작성 , 간편해진 내 삶

아래의 내용을 고려하여 폼을 작성한다.

문서의 디자인이 사용하려는 필드의 크기를 수용할 수 있도록 한다 .
첫 필드를 만들 때는 글꼴과 겉모습 같은 것은 모든 필드에 기본이 될 수 있는 옵션을 설정한다 .
추가적인 필드의 추가하고 이름을 지을 수 있도록 시스템을 개발하라 .
정렬과 같이 몇 가지 필드 중 한 가지 속성을 변경할 경우 , 각 필드를 개별적으로 일일이 변경하지 않아도 된다. 시프트-클릭으로 필드를 선택하고 단축키 메뉴를 사용하여 속성 대화상자를 연다. 정렬을 변경할 경우, 변경 내용은 모든 선택된 필드에 적용된다.
자바스크립트는 각각의 필드에 개별적으로 쓰이고 (write), 몇몇 필드에서는 계산이 허용되지 않는다.


원문출처 : http://www.adobe.com/designcenter/acrobat/articles/acr8at_configfields.html
출처 : http://www.acrobatpdf.com/tip/detail.asp?id=79&gotopage=10&code=
반응형
반응형

출처 : 오라클 사이트

http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/statements_9013.htm#SQLRF01603

GRANT

Purpose

Use the GRANT statement to grant:

  • System privileges to users and roles.

  • Roles to users and roles. Both privileges and roles are either local, global, or external. Table 18-1 lists the system privileges (organized by the database object operated upon). Table 18-2 lists Oracle Database predefined roles.

  • Object privileges for a particular object to users, roles, and PUBLIC. Table 18-3 summarizes the object privileges that you can grant on each type of object. Table 18-4 lists object privileges and the operations that they authorize.

Notes on Authorizing Database Users You can authorize database users through means other than the database and the GRANT statement.

  • Many Oracle Database privileges are granted through supplied PL/SQL and Java packages. For information on those privileges, please refer to the documentation for the appropriate package.

  • Some operating systems have facilities that let you grant roles to Oracle Database users with the initialization parameter OS_ROLES. If you choose to grant roles to users through operating system facilities, then you cannot also grant roles to users with the GRANT statement, although you can use the GRANT statement to grant system privileges to users and system privileges and roles to other roles.

See Also:

Additional Topics

Prerequisites

To grant a system privilege, you must either have been granted the system privilege with the ADMIN OPTION or have been granted the GRANT ANY PRIVILEGE system privilege.

To grant a role, you must either have been granted the role with the ADMIN OPTION or have been granted the GRANT ANY ROLE system privilege, or you must have created the role.

To grant an object privilege, you must own the object, or the owner of the object must have granted you the object privileges with the GRANT OPTION, or you must have been granted the GRANT ANY OBJECT PRIVILEGE system privilege. If you have the GRANT ANY OBJECT PRIVILEGE, then you can grant the object privilege only if the object owner could have granted the same object privilege. In this case, the GRANTOR column of the DBA_TAB_PRIVS view displays the object owner rather than the user who issued the GRANT statement.

Syntax

grant::=

Description of grant.gif follows
Description of the illustration grant.gif

(grant_system_privileges::=, grant_object_privileges::=)

grant_system_privileges::=

Description of grant_system_privileges.gif follows
Description of the illustration grant_system_privileges.gif

(grantee_clause ::=)

grant_object_privileges::=

Description of grant_object_privileges.gif follows
Description of the illustration grant_object_privileges.gif

(on_object_clause ::=, grantee_clause ::=)

on_object_clause ::=

Description of on_object_clause.gif follows
Description of the illustration on_object_clause.gif

grantee_clause ::=

Description of grantee_clause.gif follows
Description of the illustration grantee_clause.gif

Semantics

grant_system_privileges

Use these clauses to grant system privileges.

system_privilege

Specify the system privilege you want to grant. Table 18-1 lists the system privileges, organized by the database object operated upon.

  • If you grant a privilege to a user, then the database adds the privilege to the user's privilege domain. The user can immediately exercise the privilege.

  • If you grant a privilege to a role, then the database adds the privilege to the privilege domain of the role. Users who have been granted and have enabled the role can immediately exercise the privilege. Other users who have been granted the role can enable the role and exercise the privilege.

  • If you grant a privilege to PUBLIC, then the database adds the privilege to the privilege domains of each user. All users can immediately perform operations authorized by the privilege.

Oracle Database provides the ALL PRIVILEGES shortcut for granting all the system privileges listed in Table 18-1, except the SELECT ANY DICTIONARY privilege.

role

Specify the role you want to grant. You can grant an Oracle Database predefined role or a user-defined role. Table 18-2 lists the predefined roles.

  • If you grant a role to a user, then the database makes the role available to the user. The user can immediately enable the role and exercise the privileges in the privilege domain of the role.

  • If you grant a role to another role, then the database adds the privilege domain of the granted role to the privilege domain of the grantee role. Users who have been granted the grantee role can enable it and exercise the privileges in the granted role's privilege domain.

  • If you grant a role to PUBLIC, then the database makes the role available to all users. All users can immediately enable the role and exercise the privileges in the privilege domain of the role.

    See Also:

    "Granting a Role to a Role: Example" and CREATE ROLE for information on creating a user-defined role

IDENTIFIED BY Clause

Use the IDENTIFIED BY clause to specifically identify an existing user by password or to create a nonexistent user. This clause is not valid if the grantee is a role or PUBLIC. If the user specified in the grantee_clause does not exist, then the database creates the user with the password and with the privileges and roles specified in this clause.

See Also:

CREATE USER for restrictions on usernames and passwords

WITH ADMIN OPTION

Specify WITH ADMIN OPTION to enable the grantee to:

  • Grant the role to another user or role, unless the role is a GLOBAL role

  • Revoke the role from another user or role

  • Alter the role to change the authorization needed to access it

  • Drop the role

If you grant a system privilege or role to a user without specifying WITH ADMIN OPTION, and then subsequently grant the privilege or role to the user WITH ADMIN OPTION, then the user has the ADMIN OPTION on the privilege or role.

To revoke the ADMIN OPTION on a system privilege or role from a user, you must revoke the privilege or role from the user altogether and then grant the privilege or role to the user without the ADMIN OPTION.

grantee_clause

TO grantee_clause identifies users or roles to which the system privilege, role, or object privilege is granted.

Restriction on Grantees A user, role, or PUBLIC cannot appear more than once in TO grantee_clause.

PUBLIC Specify PUBLIC to grant the privileges to all users.

Restrictions on Granting System Privileges and Roles Privileges and roles are subject to the following restrictions:

  • A privilege or role cannot appear more than once in the list of privileges and roles to be granted.

  • You cannot grant a role to itself.

  • You cannot grant a role IDENTIFIED GLOBALLY to anything.

  • You cannot grant a role IDENTIFIED EXTERNALLY to a global user or global role.

  • You cannot grant roles circularly. For example, if you grant the role banker to the role teller, then you cannot subsequently grant teller to banker.

grant_object_privileges

Use these clauses to grant object privileges.

object_privilege

Specify the object privilege you want to grant. You can specify any of the values shown in Table 18-3. See also Table 18-4.

Restriction on Object Privileges A privilege cannot appear more than once in the list of privileges to be granted.

ALL [PRIVILEGES]

Specify ALL to grant all the privileges for the object that you have been granted with the GRANT OPTION. The user who owns the schema containing an object automatically has all privileges on the object with the GRANT OPTION. The keyword PRIVILEGES is provided for semantic clarity and is optional.

column

Specify the table or view column on which privileges are to be granted. You can specify columns only when granting the INSERT, REFERENCES, or UPDATE privilege. If you do not list columns, then the grantee has the specified privilege on all columns in the table or view.

For information on existing column object grants, query the USER_, ALL_, or DBA_COL_PRIVS data dictionary view.

on_object_clause

The on_object_clause identifies the object on which the privileges are granted. Directory schema objects and Java source and resource schema objects are identified separately because they reside in separate namespaces.

If you can make this grant only because you have the GRANT ANY OBJECT PRIVILEGE system privilege--that is, you are not the owner of object, nor do you have object_privilege on object WITH GRANT OPTION--then the effect of this grant is that you are acting on behalf of the object owner. The *_TAB_PRIVS data dictionary views will reflect that this grant was made by the owner of object.

See Also:

WITH GRANT OPTION

Specify WITH GRANT OPTION to enable the grantee to grant the object privileges to other users and roles.

Restriction on Granting WITH GRANT OPTION You can specify WITH GRANT OPTION only when granting to a user or to PUBLIC, not when granting to a role.

WITH HIERARCHY OPTION

Specify WITH HIERARCHY OPTION to grant the specified object privilege on all subobjects of object, such as subviews created under a view, including subobjects created subsequent to this statement.

This clause is meaningful only in combination with the SELECT object privilege.

object Specify the schema object on which the privileges are to be granted. If you do not qualify object with schema, then the database assumes the object is in your own schema. The object can be one of the following types:

  • Table, view, or materialized view

  • Sequence

  • Procedure, function, or package

  • User-defined type

  • Synonym for any of the preceding items

  • Directory, library, operator, or indextype

  • Java source, class, or resource

You cannot grant privileges directly to a single partition of a partitioned table.

DIRECTORY directory_name Specify a directory schema object on which privileges are to be granted. You cannot qualify directory_name with a schema name.

JAVA SOURCE | RESOURCE The JAVA clause lets you specify a Java source or resource schema object on which privileges are to be granted.

See Also:

CREATE JAVA

Listings of System and Object Privileges

Note:

When you grant a privilege on ANY object, such as CREATE ANY CLUSTER, the result is determined by the value of the O7_DICTIONARY_ACCESSIBILITY initialization parameter. By default, this parameter is set to FALSE, so that ANY privileges give the grantee access to that type of object in all schemas except the SYS schema. If you set O7_DICTIONARY_ACCESSIBILITY to TRUE, then the ANY privileges also give the grantee access, in the SYS schema, to all objects except Oracle Scheduler objects. For security reasons, Oracle recommends that you use this setting only with great caution.

Table 18-1 System Privileges

System Privilege Name Operations Authorized

Advisor Framework Privileges: All of the advisor framework privileges are part of the DBA role.

--

ADVISOR

Access the advisor framework through PL/SQL packages such as DBMS_ADVISOR and DBMS_SQLTUNE.

Please refer to PL/SQL Packages and Types Reference for information on these packages.

ADMINISTER SQL TUNING SET

Create, drop, select (read), load (write), and delete a SQL tuning set owned by the grantee through the DBMS_SQLTUNE package.

ADMINISTER ANY SQL TUNING SET

Create, drop, select (read), load (write), and delete a SQL tuning set owned by any user through the DBMS_SQLTUNE package.

CREATE ANY SQL PROFILE

Accept a SQL Profile recommended by the SQL Tuning Advisor, which is accessed through Enterprise Manager or by the DBMS_SQLTUNE package.

DROP ANY SQL PROFILE

Drop an existing SQL Profile.

ALTER ANY SQL PROFILE

Alter the attributes of an existing SQL Profile.

CLUSTERS:

--

CREATE CLUSTER

Create clusters in the grantee's schema.

CREATE ANY CLUSTER

Create a cluster in any schema. Behaves similarly to CREATE ANY TABLE.

ALTER ANY CLUSTER

Alter clusters in any schema.

DROP ANY CLUSTER

Drop clusters in any schema.

CONTEXTS:

--

CREATE ANY CONTEXT

Create any context namespace.

DROP ANY CONTEXT

Drop any context namespace.

DATABASE:

--

ALTER DATABASE

Alter the database.

ALTER SYSTEM

Issue ALTER SYSTEM statements.

AUDIT SYSTEM

Issue AUDIT statements.

DATABASE LINKS:

--

CREATE DATABASE LINK

Create private database links in the grantee's schema.

CREATE PUBLIC DATABASE LINK

Create public database links.

DROP PUBLIC DATABASE LINK

Drop public database links.

DEBUGGING:

--

DEBUG CONNECT SESSION

Connect the current session to a debugger.

DEBUG ANY PROCEDURE

Debug all PL/SQL and Java code in any database object. Display information on all SQL statements executed by the application.

Note: Granting this privilege is equivalent to granting the DEBUG object privilege on all applicable objects in the database.

DIMENSIONS:

--

CREATE DIMENSION

Create dimensions in the grantee's schema.

CREATE ANY DIMENSION

Create dimensions in any schema.

ALTER ANY DIMENSION

Alter dimensions in any schema.

DROP ANY DIMENSION

Drop dimensions in any schema.

DIRECTORIES:

--

CREATE ANY DIRECTORY

Create directory database objects.

DROP ANY DIRECTORY

Drop directory database objects.

INDEXTYPES:

--

CREATE INDEXTYPE

Create an indextype in the grantee's schema.

CREATE ANY INDEXTYPE

Create an indextype in any schema and create a comment on an indextype in any schema.

ALTER ANY INDEXTYPE

Modify indextypes in any schema.

DROP ANY INDEXTYPE

Drop an indextype in any schema.

EXECUTE ANY INDEXTYPE

Reference an indextype in any schema.

INDEXES:

--

CREATE ANY INDEX

Create in any schema a domain index or an index on any table in any schema.

ALTER ANY INDEX

Alter indexes in any schema.

DROP ANY INDEX

Drop indexes in any schema.

JOB SCHEDULER OBJECTS:

The following privileges are needed to execute procedures in the DBMS_SCHEDULER package.

CREATE JOB

Create jobs, schedules, or programs in the grantee's schema.

CREATE ANY JOB

Create, alter, or drop jobs, schedules, or programs in any schema.

Note: This extremely powerful privilege allows the grantee to execute code as any other user. It should be granted with caution.

CREATE EXTERNAL JOB

Create in the grantee's schema an executable scheduler job that runs on the operating system.

EXECUTE ANY PROGRAM

Use any program in a job in the grantee's schema.

EXECUTE ANY CLASS

Specify any job class in a job in the grantee's schema.

MANAGE SCHEDULER

Create, alter, or drop any job class, window, or window group.

LIBRARIES:

--

CREATE LIBRARY

Create external procedure or function libraries in the grantee's schema.

CREATE ANY LIBRARY

Create external procedure or function libraries in any schema.

DROP ANY LIBRARY

Drop external procedure or function libraries in any schema.

MATERIALIZED VIEWS:

--

CREATE MATERIALIZED VIEW

Create a materialized view in the grantee's schema.

CREATE ANY MATERIALIZED VIEW

Create materialized views in any schema.

ALTER ANY MATERIALIZED VIEW

Alter materialized views in any schema.

DROP ANY MATERIALIZED VIEW

Drop materialized views in any schema.

QUERY REWRITE

This privilege has been deprecated. No privileges are needed for a user to enable rewrite for a materialized view that references tables or views in the user's own schema.

GLOBAL QUERY REWRITE

Enable rewrite using a materialized view when that materialized view references tables or views in any schema.

ON COMMIT REFRESH

Create a refresh-on-commit materialized view on any table in the database.

Alter a refresh-on-demand materialized on any table in the database to refresh-on-commit.

FLASHBACK ANY TABLE

Issue a SQL Flashback Query on any table, view, or materialized view in any schema. This privilege is not needed to execute the DBMS_FLASHBACK procedures.

OPERATORS:

--

CREATE OPERATOR

Create an operator and its bindings in the grantee's schema.

CREATE ANY OPERATOR

Create an operator and its bindings in any schema and create a comment on an operator in any schema.

ALTER ANY OPERATOR

Modify an operator in any schema.

DROP ANY OPERATOR

Drop an operator in any schema.

EXECUTE ANY OPERATOR

Reference an operator in any schema.

OUTLINES:

--

CREATE ANY OUTLINE

Create public outlines that can be used in any schema that uses outlines.

ALTER ANY OUTLINE

Modify outlines.

DROP ANY OUTLINE

Drop outlines.

PROCEDURES:

--

CREATE PROCEDURE

Create stored procedures, functions, and packages in the grantee's schema.

CREATE ANY PROCEDURE

Create stored procedures, functions, and packages in any schema.

ALTER ANY PROCEDURE

Alter stored procedures, functions, or packages in any schema.

DROP ANY PROCEDURE

Drop stored procedures, functions, or packages in any schema.

EXECUTE ANY PROCEDURE

Execute procedures or functions, either standalone or packaged.

Reference public package variables in any schema.

PROFILES:

--

CREATE PROFILE

Create profiles.

ALTER PROFILE

Alter profiles.

DROP PROFILE

Drop profiles.

ROLES:

--

CREATE ROLE

Create roles.

ALTER ANY ROLE

Alter any role in the database.

DROP ANY ROLE

Drop roles.

GRANT ANY ROLE

Grant any role in the database.

ROLLBACK SEGMENTS:

--

CREATE ROLLBACK SEGMENT

Create rollback segments.

ALTER ROLLBACK SEGMENT

Alter rollback segments.

DROP ROLLBACK SEGMENT

Drop rollback segments.

SEQUENCES:

--

CREATE SEQUENCE

Create sequences in the grantee's schema.

CREATE ANY SEQUENCE

Create sequences in any schema.

ALTER ANY SEQUENCE

Alter any sequence in the database.

DROP ANY SEQUENCE

Drop sequences in any schema.

SELECT ANY SEQUENCE

Reference sequences in any schema.

SESSIONS:

--

CREATE SESSION

Connect to the database.

ALTER RESOURCE COST

Set costs for session resources.

ALTER SESSION

Issue ALTER SESSION statements.

RESTRICTED SESSION

Logon after the instance is started using the SQL*Plus STARTUP RESTRICT statement.

SNAPSHOTS:

See MATERIALIZED VIEWS

SYNONYMS:

--

CREATE SYNONYM

Create synonyms in the grantee's schema.

CREATE ANY SYNONYM

Create private synonyms in any schema.

CREATE PUBLIC SYNONYM

Create public synonyms.

DROP ANY SYNONYM

Drop private synonyms in any schema.

DROP PUBLIC SYNONYM

Drop public synonyms.

TABLES:

Note: For external tables, the only valid privileges are CREATE ANY TABLE, ALTER ANY TABLE, DROP ANY TABLE, and SELECT ANY TABLE.

CREATE TABLE

Create tables in the grantee's schema.

CREATE ANY TABLE

Create tables in any schema. The owner of the schema containing the table must have space quota on the tablespace to contain the table.

ALTER ANY TABLE

Alter any table or view in any schema.

BACKUP ANY TABLE

Use the Export utility to incrementally export objects from the schema of other users.

DELETE ANY TABLE

Delete rows from tables, table partitions, or views in any schema.

DROP ANY TABLE

Drop or truncate tables or table partitions in any schema.

INSERT ANY TABLE

Insert rows into tables and views in any schema.

LOCK ANY TABLE

Lock tables and views in any schema.

SELECT ANY TABLE

Query tables, views, or materialized views in any schema.

FLASHBACK ANY TABLE

Issue a SQL Flashback Query on any table, view, or materialized view in any schema. This privilege is not needed to execute the DBMS_FLASHBACK procedures.

UPDATE ANY TABLE

Update rows in tables and views in any schema.

TABLESPACES:

--

CREATE TABLESPACE

Create tablespaces.

ALTER TABLESPACE

Alter tablespaces.

DROP TABLESPACE

Drop tablespaces.

MANAGE TABLESPACE

Take tablespaces offline and online and begin and end tablespace backups.

UNLIMITED TABLESPACE

Use an unlimited amount of any tablespace. This privilege overrides any specific quotas assigned. If you revoke this privilege from a user, then the user's schema objects remain but further tablespace allocation is denied unless authorized by specific tablespace quotas. You cannot grant this system privilege to roles.

TRIGGERS:

--

CREATE TRIGGER

Create a database trigger in the grantee's schema.

CREATE ANY TRIGGER

Create database triggers in any schema.

ALTER ANY TRIGGER

Enable, disable, or compile database triggers in any schema.

DROP ANY TRIGGER

Drop database triggers in any schema.

ADMINISTER DATABASE TRIGGER

Create a trigger on DATABASE. You must also have the CREATE TRIGGER or CREATE ANY TRIGGER system privilege.

TYPES:

--

CREATE TYPE

Create object types and object type bodies in the grantee's schema.

CREATE ANY TYPE

Create object types and object type bodies in any schema.

ALTER ANY TYPE

Alter object types in any schema.

DROP ANY TYPE

Drop object types and object type bodies in any schema.

EXECUTE ANY TYPE

Use and reference object types and collection types in any schema, and invoke methods of an object type in any schema if you make the grant to a specific user. If you grant EXECUTE ANY TYPE to a role, then users holding the enabled role will not be able to invoke methods of an object type in any schema.

UNDER ANY TYPE

Create subtypes under any nonfinal object types.

USERS:

--

CREATE USER

Create users. This privilege also allows the creator to:

  • Assign quotas on any tablespace.

  • Set default and temporary tablespaces.

  • Assign a profile as part of a CREATE USER statement.

ALTER USER

Alter any user. This privilege authorizes the grantee to:

  • Change another user's password or authentication method.

  • Assign quotas on any tablespace.

  • Set default and temporary tablespaces.

  • Assign a profile and default roles.

DROP USER

Drop users

VIEWS:

--

CREATE VIEW

Create views in the grantee's schema.

CREATE ANY VIEW

Create views in any schema.

DROP ANY VIEW

Drop views in any schema.

UNDER ANY VIEW

Create subviews under any object views.

FLASHBACK ANY TABLE

Issue a SQL Flashback Query on any table, view, or materialized view in any schema. This privilege is not needed to execute the DBMS_FLASHBACK procedures.

MERGE ANY VIEW

If a user has been granted the MERGE ANY VIEW privilege, then for any query issued by that user, the optimizer can use view merging to improve query performance without performing the checks that would otherwise be performed to ensure that view merging does not violate any security intentions of the view creator. See also Oracle Database Reference for information on the OPTIMIZER_SECURE_VIEW_MERGING parameter and Oracle Database Performance Tuning Guide for information on view merging.

MISCELLANEOUS:

--

ANALYZE ANY

Analyze any table, cluster, or index in any schema.

AUDIT ANY

Audit any object in any schema using AUDIT schema_objects statements.

CHANGE NOTIFICATION

Create a registration on queries and receive database change notifications in response to DML or DDL changes to the objects associated with the registered queries. Please refer to Oracle Database Application Developer's Guide - Fundamentals for more information on database change notification.

COMMENT ANY TABLE

Comment on any table, view, or column in any schema.

EXEMPT ACCESS POLICY

Bypass fine-grained access control.

Caution: This is a very powerful system privilege, as it lets the grantee bypass application-driven security policies. Database administrators should use caution when granting this privilege.

FORCE ANY TRANSACTION

Force the commit or rollback of any in-doubt distributed transaction in the local database.

Induce the failure of a distributed transaction.

FORCE TRANSACTION

Force the commit or rollback of the grantee's in-doubt distributed transactions in the local database.

GRANT ANY OBJECT PRIVILEGE

Grant any object privilege that the object owner is permitted to to grant.

Revoke any object privilege that was granted by the object owner or by some other user with the GRANT ANY OBJECT PRIVILEGE privilege.

GRANT ANY PRIVILEGE

Grant any system privilege.

RESUMABLE

Enable resumable space allocation.

SELECT ANY DICTIONARY

Query any data dictionary object in the SYS schema. This privilege lets you selectively override the default FALSE setting of the O7_DICTIONARY_ACCESSIBILITY initialization parameter.

SELECT ANY TRANSACTION

Query the contents of the FLASHBACK_TRANSACTION_QUERY view.

Caution: This is a very powerful system privilege, as it lets the grantee view all data in the database, including past data. This privilege should be granted only to users who need to use the Oracle Flashback Transaction Query feature.

SYSDBA

Perform STARTUP and SHUTDOWN operations.

ALTER DATABASE: open, mount, back up, or change character set.

CREATE DATABASE.

ARCHIVELOG and RECOVERY.

CREATE SPFILE.

Includes the RESTRICTED SESSION privilege.

SYSOPER

Perform STARTUP and SHUTDOWN operations.

ALTER DATABASE: open, mount, or back up.

ARCHIVELOG and RECOVERY.

CREATE SPFILE.

Includes the RESTRICTED SESSION privilege.

CONNECT, RESOURCE, and DBA

These roles are provided for compatibility with previous versions of Oracle Database. You can determine the privileges encompassed by these roles by querying the DBA_SYS_PRIVS data dictionary view.

Note: Oracle recommends that you design your own roles for database security rather than relying on these roles. These roles may not be created automatically by future versions of Oracle Database.

See Also: Oracle Database Reference for a description of the DBA_SYS_PRIVS view

DELETE_CATALOG_ROLE EXECUTE_CATALOG_ROLE SELECT_CATALOG_ROLE

These roles are provided for accessing data dictionary views and packages.

See Also: Oracle Database Administrator's Guide for more information on these roles

EXP_FULL_DATABASE

IMP_FULL_DATABASE

These roles are provided for convenience in using the import and export utilities.

See Also: Oracle Database Utilities for more information on these roles

AQ_USER_ROLE

AQ_ADMINISTRATOR_ROLE

You need these roles to use Oracle Advanced Queuing.

See Also: Oracle Streams Advanced Queuing User's Guide and Reference for more information on these roles

SNMPAGENT

This role is used by the Enterprise Manager Intelligent Agent.

See Also: Oracle Enterprise Manager Administrator's Guide

RECOVERY_CATALOG_OWNER

You need this role to create a user who owns a recovery catalog.

See Also: Oracle Database Backup and Recovery Advanced User's Guide for more information on recovery catalogs


Table 18-2 Oracle Database Predefined Roles

Predefined Role Purpose

HS_ADMIN_ROLE

A DBA using Oracle Database heterogeneous services needs this role to access appropriate tables in the data dictionary.

See Also: Oracle Database Heterogeneous Connectivity Administrator's Guide for more information

SCHEDULER_ADMIN

This role allows the grantee to execute the procedures of the DBMS_SCHEDULER package. It includes all of the job scheduler system privileges and is included in the DBA role.

See Also: Oracle Database Administrator's Guide for more information on the DBMS_SCHEDULER package


Table 18-3 Object Privileges Available for Particular Objects

Object Privilege Table View Sequence Procedure, Function, Package (Note 1) Material-ized View Directory Library User- defined Type Operator Indextype

ALTER (Note 2)

X

--

X

--

--

--

--

--

--

--

DELETE

X

X

--

--

X

(Note 3)

--

--

--

--

--

EXECUTE

--

--

--

X

(Note 2)

--

--

X

(Note 2)

X

(Note 2)

X

(Note 2)

X

(Note 2)

DEBUG

X

X

--

X

--

--

--

X

--

--

FLASHBACK

X

X

--

--

X

--

--

--

--

--

INDEX

X

--

--

--

--

--

--

--

--

--

INSERT

X

X

--

--

X

(Note 3)

--

--

--

--

--

ON COMMIT REFRESH

X

--

--

--

--

--

--

--

--

--

QUERY REWRITE

X

--

--

--

--

--

--

--

--

--

READ

--

--

--

--

--

X

--

--

--

--

REFERENCES

X

X

--

--

--

--

--

--

--

--

SELECT

X

X

X

--

X

--

--

--

--

--

UNDER

--

X

--

--

--

--

--

X

--

--

UPDATE

X

X

--

--

X (Note 3)

--

--

--

--

--

WRITE

--

--

--

--

--

X

--

--

--

--


Note 1: Oracle Database treats a Java class, source, or resource as if it were a procedure for purposes of granting object privileges.

Note 2: Job scheduler objects are created using the DBMS_SCHEDULER package. After these objects are created, you can grant the EXECUTE object privilege on job scheduler classes and programs. You can grant ALTER privilege on job scheduler jobs, programs, and schedules.

Note 3: The DELETE, INSERT, and UPDATE privileges can be granted only to updatable materialized views.

Table 18-4 Object Privileges and the Operations They Authorize

Object Privilege Operations Authorized

TABLE PRIVILEGES

The following table privileges authorize operations on a table. Any one of following object privileges allows the grantee to lock the table in any lock mode with the LOCK TABLE statement.

Note: For external tables, the only valid object privileges are ALTER and SELECT.

ALTER

Change the table definition with the ALTER TABLE statement.

DELETE

Remove rows from the table with the DELETE statement.

Note: You must grant the SELECT privilege on the table along with the DELETE privilege if the table is on a remote database.

DEBUG

Access, through a debugger:

  • PL/SQL code in the body of any triggers defined on the table

  • Information on SQL statements that reference the table directly

INDEX

Create an index on the table with the CREATE INDEX statement.

INSERT

Add new rows to the table with the INSERT statement.

REFERENCES

Create a constraint that refers to the table. You cannot grant this privilege to a role.

SELECT

Query the table with the SELECT statement.

UPDATE

Change data in the table with the UPDATE statement.

Note: You must grant the SELECT privilege on the table along with the UPDATE privilege if the table is on a remote database.

VIEW PRIVILEGES

The following view privileges authorize operations on a view. Any one of the following object privileges allows the grantee to lock the view in any lock mode with the LOCK TABLE statement.

To grant a privilege on a view, you must have that privilege with the GRANT OPTION on all of the base tables of the view.

DEBUG

Access, through a debugger:

  • PL/SQL code in the body of any triggers defined on the view

  • Information on SQL statements that reference the view directly

DELETE

Remove rows from the view with the DELETE statement.

INSERT

Add new rows to the view with the INSERT statement.

REFERENCES

Define foreign key constraints on the view.

SELECT

Query the view with the SELECT statement.

UNDER

Create a subview under this view. You can grant this object privilege only if you have the UNDER ANY VIEW privilege WITH GRANT OPTION on the immediate superview of this view.

UPDATE

Change data in the view with the UPDATE statement.

SEQUENCE PRIVILEGES

The following sequence privileges authorize operations on a sequence.

ALTER

Change the sequence definition with the ALTER SEQUENCE statement.

SELECT

Examine and increment values of the sequence with the CURRVAL and NEXTVAL pseudocolumns.

PROCEDURE, FUNCTION, PACKAGE PRIVILEGES

The following procedure, function, and package privileges authorize operations on procedures, functions, and packages. These privileges also apply to Java sources, classes, and resources, which Oracle Database treats as though they were procedures for purposes of granting object privileges.

DEBUG

Access, through a debugger, all public and nonpublic variables, methods, and types defined on the object.

Place a breakpoint or stop at a line or instruction boundary within the procedure, function, or package. This privilege grants access to the declarations in the method or package specification and body.

EXECUTE

Execute the procedure or function directly, or access any program object declared in the specification of a package, or compile the object implicitly during a call to a currently invalid or uncompiled function or procedure. This privilege does not allow the grantee to explicitly compile using ALTER PROCEDURE or ALTER FUNCTION. For explicit compilation you need the appropriate ALTER system privilege.

Access, through a debugger, public variables, types, and methods defined on the procedure, function, or package. This privilege grants access to the declarations in the method or package specification only.

Note: Users do not need this privilege to execute a procedure, function, or package indirectly.

See Also: Oracle Database Concepts and Oracle Database Application Developer's Guide - Fundamentals

MATERIALIZED VIEW PRIVILEGES

The following materialized view privileges authorize operations on a materialized view.

ON COMMIT REFRESH

Create a refresh-on-commit materialized view on the specified table.

QUERY REWRITE

Create a materialized view for query rewrite using the specified table.

SELECT

Query the materialized view with the SELECT statement.

SYNONYM PRIVILEGES

Synonym privileges are the same as the privileges for the base object. Granting a privilege on a synonym is equivalent to granting the privilege on the base object. Similarly, granting a privilege on a base object is equivalent to granting the privilege on all synonyms for the object. If you grant to a user a privilege on a synonym, then the user can use either the synonym name or the base object name in the SQL statement that exercises the privilege.

DIRECTORY PRIVILEGES

The following directory privileges provide secured access to the files stored in the operating system directory to which the directory object serves as a pointer. The directory object contains the full path name of the operating system directory where the files reside. Because the files are actually stored outside the database, Oracle Database server processes also need to have appropriate file permissions on the file system server. Granting object privileges on the directory database object to individual database users, rather than on the operating system, allows the database to enforce security during file operations.

READ

Read files in the directory.

WRITE

Write files in the directory. This privilege is useful only in connection with external tables. It allows the grantee to determine whether the external table agent can write a log file or a bad file to the directory.

Restriction: This privilege does not allow the grantee to write to a BFILE.

LIBRARY PRIVILEGE

The following library privilege authorizes operations on a library.

EXECUTE

Use and reference the specified object and invoke its methods.

OBJECT TYPE PRIVILEGES

The following object type privileges authorize operations on a database object type.

DEBUG

Access, through a debugger, all public and nonpublic variables, methods, and types defined on the object type.

Place a breakpoint or stop at a line or instruction boundary within the type body.

EXECUTE

Use and reference the specified object and invoke its methods.

Access, through a debugger, public variables, types, and methods defined on the object type.

UNDER

Create a subtype under this type. You can grant this object privilege only if you have the UNDER ANY TYPE privilege WITH GRANT OPTION on the immediate supertype of this type.

INDEXTYPE PRIVILEGE

The following indextype privilege authorizes operations on indextypes.

EXECUTE

Reference an indextype.

OPERATOR PRIVILEGE

The following operator privilege authorizes operations on user-defined operators.

EXECUTE

Reference an operator.


Examples

Granting a System Privilege to a User: Example To grant the CREATE SESSION system privilege to the sample user hr, allowing hr to log on to Oracle Database, issue the following statement:

GRANT CREATE SESSION 
   TO hr; 

Granting System Privileges to a Role: Example The following statement grants appropriate system privileges to a data warehouse manager role, which was created in the "Creating a Role: Example":

GRANT
     CREATE ANY MATERIALIZED VIEW
   , ALTER ANY MATERIALIZED VIEW
   , DROP ANY MATERIALIZED VIEW
   , QUERY REWRITE
   , GLOBAL QUERY REWRITE
   TO dw_manager
   WITH ADMIN OPTION;

The dw_manager privilege domain now contains the system privileges related to materialized views.

Granting a Role with the Admin Option: Example To grant the dw_manager role with the ADMIN OPTION to the sample user sh, issue the following statement:

GRANT dw_manager 
   TO sh 
   WITH ADMIN OPTION; 

User sh can now perform the following operations with the dw_manager role:

  • Enable the role and exercise any privileges in the privilege domain of the role, including the CREATE MATERIALIZED VIEW system privilege

  • Grant and revoke the role to and from other users

  • Drop the role

Granting Object Privileges to a Role: Example The following example grants the SELECT object privileges to a data warehouse user role, which was created in the "Creating a Role: Example":

GRANT SELECT ON sh.sales TO warehouse_user;

Granting a Role to a Role: Example The following statement grants the warehouse_user role to the dw_manager role. Both roles were created in the "Creating a Role: Example":

GRANT warehouse_user TO dw_manager; 

The dw_manager role now contains all of the privileges in the domain of the warehouse_user role.

Granting an Object Privilege on a Directory: Example To grant READ on directory bfile_dir to user hr, with the GRANT OPTION, issue the following statement:

GRANT READ ON DIRECTORY bfile_dir TO hr
   WITH GRANT OPTION;

Granting Object Privileges on a Table to a User: Example To grant all privileges on the table oe.bonuses, which was created in "Merging into a Table: Example", to the user hr with the GRANT OPTION, issue the following statement:

GRANT ALL ON bonuses TO hr 
   WITH GRANT OPTION; 

The user hr can subsequently perform the following operations:

  • Exercise any privilege on the bonuses table

  • Grant any privilege on the bonuses table to another user or role

Granting Object Privileges on a View: Example To grant SELECT and UPDATE privileges on the view emp_view, which was created in "Creating a View: Example", to all users, issue the following statement:

GRANT SELECT, UPDATE 
   ON emp_view TO PUBLIC; 

All users can subsequently query and update the view of employee details.

Granting Object Privileges to a Sequence in Another Schema: Example To grant SELECT privilege on the customers_seq sequence in the schema oe to the user hr, issue the following statement:

GRANT SELECT 
   ON oe.customers_seq TO hr; 

The user hr can subsequently generate the next value of the sequence with the following statement:

SELECT oe.customers_seq.NEXTVAL 
   FROM DUAL; 

Granting Multiple Object Privileges on Individual Columns: Example To grant to user oe the REFERENCES privilege on the employee_id column and the UPDATE privilege on the employee_id, salary, and commission_pct columns of the employees table in the schema hr, issue the following statement:

GRANT REFERENCES (employee_id), 
      UPDATE (employee_id, salary, commission_pct) 
   ON hr.employees
   TO oe; 

The user oe can subsequently update values of the employee_id, salary, and commission_pct columns. User oe can also define referential integrity constraints that refer to the employee_id column. However, because the GRANT statement lists only these columns, oe cannot perform operations on any of the other columns of the employees table.

For example, oe can create a table with a constraint:

CREATE TABLE dependent 
   (dependno   NUMBER, 
    dependname VARCHAR2(10), 
    employee   NUMBER 
   CONSTRAINT in_emp REFERENCES hr.employees(employee_id) );

The constraint in_emp ensures that all dependents in the dependent table correspond to an employee in the employees table in the schema hr.

반응형

'Database > ORACLE' 카테고리의 다른 글

rman Tool  (0) 2010.02.01
WS1-2-ch18. Data Pump (expdp/impdp) overview  (0) 2010.02.01
`BIN$+......==$0` 알수 없는 테이블..  (0) 2010.01.14
sqlplus 환경 설정  (0) 2010.01.08
Partition Table  (0) 2009.12.29

+ Recent posts