오라클 패키지와 권한

기술지원

기술지원 문의

080-850-0915

유지보수 대상고객

  1. 홈페이지
  2. 기술지원
  3. 기술문서
  4. ArcGIS Enterprise
  5. 오라클 패키지와 권한

오라클 패키지와 권한

오라클 패키지와 권한

 

지오데이터베이스 생성 또는 업그레이드 후 다음 패키지의 오라클 PUBLIC 역할로부터 실행 권한을 회수할 수 있습니다.

▪ sys.dbms_lock
▪ sys.dbms_pipe
▪ sys.dbms_lob
▪ sys.dbms_sql
▪ sys.dbms_utility
▪ sys.utl_raw

 

실행 권한이 회수 되면 오라클 관리자는 반드시 SDE 사용자와 ArcGIS에서 오라클 인스턴스에 접속하는 각 사용자에게 실행 권한을 부여해야 합니다.

PUBLIC으로부터 패키지의 권한을 회수하려면 SQL *PLUS에서 SYS 사용자 계정을 통해 다음 SQL 명령어를 통해 권한을 회수합니다.

SQL> REVOKE EXECUTE ON dbms_lock FROM public;

Revoke succeeded.
SQL> REVOKE EXECUTE ON dbms_pipe FROM public;

Revoke succeeded.
SQL> REVOKE EXECUTE ON dbms_lob FROM public;

Revoke succeeded.
SQL> REVOKE EXECUTE ON dbms_sql FROM public;

Revoke succeeded.
SQL> REVOKE EXECUTE ON dbms_utility FROM public;

Revoke succeeded.
SQL> REVOKE EXECUTE ON utl_raw FROM public;

Revoke succeeded.

 

PUBLIC 역할에서 권한이 회수되면 SYS 사용자는 반드시 SDE 사용자에게 패키지 실행 권한을 부여해야 합니다.

SQL> GRANT EXECUTE ON dbms_lock TO sde;
Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_pipe TO sde;
Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_lob TO sde;
Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_sql TO sde;
Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_utility TO sde;

Grant succeeded.

 

SQL> GRANT EXECUTE ON utl_raw TO sde;

Grant succeeded.

SDE 사용자가 sys.dbms_pipe 패키지를 실행할 수 있는 권한이 없는 상황에서 ArcSDE 서비스를 시작하면 다음 에러 메시지와 함께 서비스 시작에 실패합니다.

 

ArcSDE 에러 로그 :

“SQL Stmt:

Execute privilege for required Oracle builtin package DBMS_PIPE must be directly granted for the SDE DBA user, granting them a ROLE with execute access is insufficient.”

개인 사용자가 ArcSDE 응용프로그램 서버 또는 다이렉트 커넥션을 이용해 지오데이터베이스에 접속하려면 SYS 사용자는 반드시 사용자에게 패키지에 대한 권한을 부여해야 합니다. 다음은 SQL*Plus를 이용해 SYS 사용자로 접속해 각 패키지에 대한 실행 권한을 원하는 사용자에게 부여하는 과정입니다.

SQL> GRANT EXECUTE ON dbms_lock TO tom;

Grant succeeded.

 

SQL> GRANT execute ON dbms_pipe TO tom;

Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_lob TO tom;

Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_sql TO tom;

Grant succeeded.

 

SQL> GRANT EXECUTE ON dbms_utility TO tom;

Grant succeeded.

 

SQL> GRANT EXECUTE ON utl_raw TO tom;
Grant succeeded.

 

지오데이터베이스에 연결된 각각의 사용자에게 위와 같이 패키지 권한을 부여해야 합니다.

패키지에 대한 실행 권한을 데이터베이스에 부여하고 사용자에게 역할을 부여하는 것을 지원하지 않습니다.

왜냐하면 ArcSDE는 오라클 패키지에 종속되는 패키지를 자체적으로 가지고 있기 때문에 오라클에 저장된 프로시져 또는 패키지를 실행할 때 역할을 통한 권한 부여는 적합하지 않습니다.

 

각 사용자에게 패키지에 대한 실행 권한을 부여한 후 SDE 객체를 다시 컴파일 합니다.

SYS 사용자로 접속해 SQL*Plus에서 SDE 스키마를 컴파일 합니다.

SQL> EXEC dbms_utility.compile_schema( ‘SDE’ );

 

이 내용과 관련된 정보를 보고 싶으시면

http://support.esri.com/en/knowledgebase/techarticles/detail/35408를 참조하시기 바랍니다.

 

이 문서가 도움이 되었나요?

관련 기술문서