2011-01-13 3 views
1

나는 오라클 데이터베이스 역할을 생성하고 난 다음과 같이 SQLPLUS에서 사용자에게 역할을 설정할 수 있어요 :설정 DB 역할

SQL> set role all_temper_role; 

Role set. 

하지만 오라클 보고서에서이 역할을 설정해야합니다 내가 사용 :

HOLD_CMD := 'ALL_TEMPer_ROLE'; 
DBMS_SESSION.SET_ROLE(HOLD_CMD); 

하지만 이것은 작동하지 않습니다. 제 오라클 리포트 프로그램에서이 역할을 어떻게 설정하는지 알려주십시오.

답변

0

당신이 소문자 문자를 만든 사실을 알지 못한다면 당신은 아마 당신의 역할 이름을 대문자로 만들고 싶어 :

HOLD_CMD := 'ALL_TEMPER_ROLE'; 
DBMS_SESSION.SET_ROLE(HOLD_CMD); 
0

오라클을 통해이를 달성하기 위해 더 나은 방법을 제공 내장 된 행 레벨 보안 (RLS) 메커니즘 (세분화 된 액세스 제어 또는 FGAC라고도 함). 우리는 보고서에 FGAC를 수행했습니다. "srw.user_exit ('FND의 SRWINIT');"이전 문서에 따르면

,

1) 사용자 파라미터 P_CONC_REQUEST_ID 2) 용액을 첨가하여 BeforeReport 트리거 3) 추가 "srw.user_exit ('FND SRWEXIT');" AfterReport 방아쇠에

우리는 당신을 도울지도 모른다 희망한다.

0

(보고서 수준의) 속성 관리자에는 "역할 이름"속성이 있습니다. 경험은 이것이 최상의 솔루션이라는 것을 가르쳐주었습니다.

관련 문제