사용자가 다른 스키마에 액세스 할 필요가 없지만 저장 프로 시저가 다른 스키마에 액세스 할 수 있어야합니다.저장 프로 시저에 다른 스키마에서 선택할 수있는 권한을 부여하는 방법은 무엇입니까?
1
A
답변
5
설명하는 것은 불가능합니다.
b.procedure
이 a.table
에서 선택, 삽입, 업데이트 또는 삭제할 수있는 경우 b
으로 로그인 한 사용자도 그렇게 할 수 있습니다.
대신 수행해야 할 작업은 a.procedure
및 grant execute on a.procedure to b
절차입니다.
3
권한은 객체에 부여 할 수 없으며 사용자 또는 역할에만 부여 할 수 있습니다.
제어의 세분성을 구현하는 방법은 다른 스키마가 자체 테이블에서 작동하는 프로 시저를 정의하는 것입니다. 그런 다음 프로 시저에 대한 실행을 다른 사용자에게 부여합니다. 이는 스키마 객체에 대한 작업을 캡슐화하는 절차의 유용한 사례 중 하나입니다.
PL/SQL 오브젝트에서 권한을 제어하는 메커니즘은 AUTHID입니다. CURRENT_USER와 DEFINER의 두 가지 옵션이 있습니다. 이 경우 정의 자의 권한 인 AUTHID DEFINER
(기본값)을 사용하려고합니다. Find out more.
Definer 's rights is/default입니다. 왜이 단어를 언급해도 혼란 스러울까요? –
@ Colin'tHart - 완전성을 위해 – APC