Oracle : 다른 스키마에 테이블 생성을 허용하시겠습니까?
Schema1과 Schema2 두 사용자가 있습니다.
Schema1에 Create Table On Schema2 권한을 부여하는 방법?
계속 뒤돌아서서 헷갈렸어요.시도했습니다.
Schema2에서 해봤는데요.
GRANT CREATE TABLE TO SCHEMA1 WITH ADMIN OPTION;
그러나 이것은 Schema2가 아닌 자체 Schema1에 Creating table을 부여하는 것 같습니다.
좋은 생각 있으세요?
감사해요.
DBA 사용자가 아닌 사용자가 다른 스키마에서 테이블을 생성할 수 있도록 허용하는 유일한 다른 방법을 제공하는 것입니다.CREATE ANY TABLE
시스템 권한.
이 권한은 다음 권한에만 부여할 수 있습니다.SCHEMA1 by a user having the CREATE ANY PRIVILEGE
특권.
당신은 허락하길 원합니다.create ANY table
:
grant create any table to schema1;
그any
"modifier"를 사용하면 자신의 스키마가 아닌 다른 테이블을 만들 수 있습니다.
보다 나은 솔루션(와 함께 제공되는 보안 위협 최소화)CREATE ANY TABLE
권한...)
- 스키마2에서 테이블 정의를 "input" 매개 변수로 사용하는 프로시저를 만듭니다(예: varchar2(4000)의 p_tab_def).
- 내부에 execute_immediate(p_tab_def); 문을 넣습니다."CREATE TABLE [...]" 이외의 다른 DDL 문으로부터 자신을 방어하기 위해서는 p_tab_def를 먼저 확인해야 합니다(예: 처음 두 단어를 확인하여 간단한 확인을 사용할 수 있음 -> "CREATE TABLE"이어야 함).
GRANT EXECUTE ON schema2.procedure_name TO schema1;
단순한 개념입니다...전 직장에서 그런 개념을 사용한 적이 있습니다.
언급URL : https://stackoverflow.com/questions/21412747/oracle-grant-create-table-in-another-schema
'programing' 카테고리의 다른 글
여러 태그를 선택하는 XPath (0) | 2023.10.09 |
---|---|
jQuery에서 마지막 자식 요소를 선택하는 방법? (0) | 2023.10.09 |
PATH - Visual Studio Code 및 Node.js에서 런타임 '노드'를 찾을 수 없습니다. (0) | 2023.10.09 |
활성 ASP를 모두 나열합니다.NET 세션 (0) | 2023.10.09 |
getActivity()는 Fragment 함수에서 null을 반환합니다. (0) | 2023.10.09 |