REVOKE CALLER

호출자 권한 부여 를 사용하여 이전에 실행 파일 소유자에게 부여된 권한을 취소합니다.

REVOKE CALLER 명령의 변형은 다음과 같습니다.

  • REVOKE CALLER — 특정 오브젝트에 대한 특정 권한을 취소합니다.

  • REVOKE ALLCALLERPRIVILEGES — 모든 오브젝트에 대한 특정 권한을 취소합니다. 실행 파일은 오브젝트에 액세스하려고 할 때 호출자의 권한으로 실행할 수 없습니다.

  • REVOKE INHERITED CALLER — 공통 스키마, 데이터베이스 또는 계정을 공유하는 경우 동일한 유형의 현재 및 향후 모든 오브젝트에 대한 호출자 권한을 취소합니다. 지정된 목록에 있는 권한만 취소됩니다.

  • REVOKE ALL INHERITED CALLER PRIVILEGES — 공통 스키마, 데이터베이스 또는 계정을 공유하는 경우 동일한 유형의 현재 및 향후 모든 오브젝트에 대한 호출자 권한을 취소합니다. 모든 권한이 취소되며, 실행 파일은 호출자의 권한으로 실행할 수 없게 됩니다.

구문

REVOKE CALLER <object_privilege> [ , <object_privilege> ... ]
  ON <object_type> <object_name>
  FROM { ROLE | DATABASE ROLE } <grantee_name>

REVOKE ALL CALLER PRIVILEGES
  ON <object_type> <object_name>
  FROM { ROLE | DATABASE ROLE } <grantee_name>

REVOKE INHERITED CALLER <object_privilege> [ , <object_privilege> ... ]
  ON ALL <object_type_plural>
  IN { ACCOUNT | DATABASE <db_name> | SCHEMA <schema_name> | APPLICATION <app_name> | APPLICATION PACKAGE <app_pkg_name> }
  FROM { ROLE | DATABASE ROLE } <grantee_name>

REVOKE ALL INHERITED CALLER PRIVILEGES
  ON ALL <object_type_plural>
  IN { ACCOUNT | DATABASE <db_name> | SCHEMA <schema_name> | APPLICATION <app_name> | APPLICATION PACKAGE <app_pkg_name> }
  FROM { ROLE | DATABASE ROLE } <grantee_name>
Copy

매개 변수

object_privilege [ , object_privilege ... ]

취소하려는 오브젝트 권한입니다. 지정된 역할이 소유한 실행 파일은 더 이상 이러한 권한으로 실행할 수 없습니다. 특정 오브젝트 유형에 대한 권한 목록은 액세스 제어 권한 섹션을 참조하십시오.

쉼표로 구분된 목록을 사용하여 둘 이상의 오브젝트 권한을 지정합니다.

ON object_type object_name

권한을 취소하려는 오브젝트(유형 포함)입니다. object_type 의 단수형(예: TABLE 또는 WAREHOUSE)을 사용합니다.

ON ALL object_type_plural IN ACCOUNT 또는 . ON ALL object_type_plural IN DATABASE db_name 또는 . ON ALL object_type_plural IN SCHEMA schema_name 또는 . ON ALL object_type_plural IN APPLICATION app_name 또는 . ON ALL object_type_plural IN APPLICATION PACKAGE app_pkg_name

특정 유형의 모든 오브젝트에 대한 권한을 취소합니다. 오브젝트 유형의 복수형(예: TABLES 또는 WAREHOUSES)을 사용합니다.

REVOKE 문을 사용하여 현재 계정의 모든 오브젝트에 대한 액세스 권한을 취소하거나 지정된 데이터베이스, 스키마, 애플리케이션 또는 애플리케이션 패키지의 오브젝트에 대한 액세스 권한만 취소할 수 있습니다.

FROM ROLE grantee_name 또는 . FROM DATABASE ROLE grantee_name

이전에 호출자 권한을 부여받은 실행 파일 소유자.

액세스 제어 요구 사항

이 작업을 실행하는 데 사용되는 역할 에는 최소한 다음 권한 이 있어야 합니다.

권한

오브젝트

참고

MANAGE CALLER GRANTS

계정

계정 수준 MANAGE CALLER GRANTS 권한은 호출자 권한 부여에만 적용됩니다. 역할의 권한을 취소할 수 없습니다.

모든 권한

지정된 모든 오브젝트

REVOKE 명령에 지정된 오브젝트에 대해 하나 이상의 권한이 필요합니다. 예를 들어, 테이블에 대한 호출자 권한을 취소하려면 해당 테이블에 대한 권한이 하나 이상 있어야 합니다.

지정된 권한 세트로 사용자 지정 역할을 만드는 방법에 대한 지침은 사용자 지정 역할 만들기 섹션을 참조하십시오.

보안 오브젝트 에 대해 SQL 작업을 수행하기 위한 역할과 권한 부여에 대한 일반적인 정보는 액세스 제어의 개요 섹션을 참조하십시오.

owner_role 소유의 실행 파일은 현재 계정의 뷰에 액세스할 때 더 이상 호출자의 권한으로 실행할 수 없습니다.

REVOKE ALL INHERITED CALLER PRIVILEGES ON ALL VIEWS IN ACCOUNT FROM ROLE owner_role;
Copy

owner_role 소유의 실행 파일은 db.sch1 스키마에 액세스할 때 더 이상 USAGE 권한으로 실행할 수 없습니다.

REVOKE CALLER USAGE ON SCHEMA db.sch1 FROM ROLE owner_role;
Copy