2012-10-29 4 views

답변

5

설명하는 것은 불가능합니다.

b.procedurea.table에서 선택, 삽입, 업데이트 또는 삭제할 수있는 경우 b으로 로그인 한 사용자도 그렇게 할 수 있습니다.

대신 수행해야 할 작업은 a.proceduregrant execute on a.procedure to b 절차입니다.

3

권한은 객체에 부여 할 수 없으며 사용자 또는 역할에만 부여 할 수 있습니다.

제어의 세분성을 구현하는 방법은 다른 스키마가 자체 테이블에서 작동하는 프로 시저를 정의하는 것입니다. 그런 다음 프로 시저에 대한 실행을 다른 사용자에게 부여합니다. 이는 스키마 객체에 대한 작업을 캡슐화하는 절차의 유용한 사례 중 하나입니다.

PL/SQL 오브젝트에서 권한을 제어하는 ​​메커니즘은 AUTHID입니다. CURRENT_USER와 DEFINER의 두 가지 옵션이 있습니다. 이 경우 정의 자의 권한 인 AUTHID DEFINER (기본값)을 사용하려고합니다. Find out more.

+0

Definer 's rights is/default입니다. 왜이 단어를 언급해도 혼란 스러울까요? –

+0

@ Colin'tHart - 완전성을 위해 – APC