설문조사
PostgreSQL/PPAS 관련 듣고 싶은 교육은
결과보기
EnterpriseDB
총 게시물 95건
목록 글쓰기 이전글 다음글

PL/pgSQL definer 와 invoker 권한

글쓴이 : PostgresDBA   날짜 : 2015-01-14 (수) 16:13   조회 : 10231 인쇄
함수 생성시에 적어주는 옵션중 security invoker 와 security definer 가 있습니다.
각각의 의미는 다음과 같습니다.

CREATE FUNCTION 
...
SECURITY INVOKER  | SECURITY DEFINER 

함수 호출시

1. 함수 생성자 권한으로 수행 - security definer
2. 함수 생성자가 아닌 호출자 권한으로 수행 - security invoker (디폴트)

--------------------------------------------------
오라클에서는 위 각각에 아래와 같이 대응됩니다. 서로 디폴트값이 다릅니다.
1. definer (디폴트)
2. current_user 

CREATE OR REPLACE FUNCTION
AUTHID DEFINER | CURRENT_USER
IS...

참고로 PPAS 에서는, ORACLE SYNTAX  로 함수/프로시져를 생성하면 이때는
오라클과 같은 디폴트(DEFINER)를 따릅니다.
ex) PPAS 에서만 존재하는 CREATE PROCEDURE 구문은 디폴트가 definer 권한 입니다.

댓글목록

목록 글쓰기 이전글 다음글

postgresdba.com