저는 Oracle 11gR2를 사용하고 있으며 두 개의 스키마 - A
과 B
을 가지고 있으며 각각 CUSTOMER
테이블을 가지고 있습니다.트리거 내 다른 스키마로의 업데이트 만 허용
B.CUSTOMER
이 업데이트되면 A.CUSTOMER
에 동일한 업데이트가 수행되기를 바랍니다. 스키마 A는 스키마 B에 대한 모든 권한을 가지고 있지만 가능한 한 스키마 B에 대한 권한을 스키마 B에 갖기를 원합니다.
B.CUSTOMER%ROWTYPE
변수를 받아 A.CUSTOMER를 업데이트하는 데 사용하며, 허가 스키마 A의 절차,
A.UPDATE_CUSTOMER
쓴
I 만들어
업데이트 트리거 후 각 행 이 업데이트 절차를 호출하는 B.CUSTOMER
에 있으며 원하는대로 작동합니다. 하지만 나는 사용자 B가 트리거 밖에서 프로 시저를 명시 적으로 호출 할 수 있다고 생각하고 있으며이를 허용하고 싶지 않습니다.
A.UPDATE_CUSTOMER
이 트리거 외부에서 B에 의해 호출되는 것을 방지 할 수있는 방법이 있습니까? 또는 사용자 B가 트리거 외부에서 A.CUSTOMER
을 업데이트하지 못하도록 다른 방법이 있습니까?