Kategorien:

DDL für Benutzer und Sicherheit (Zugriffssteuerung)

REVOKE <Berechtigung> … FROM SHARE

Widerruft die Zugriffsrechte für Datenbanken und andere unterstützte Datenbankobjekte (Schemata, Tabellen und Ansichten) einer Freigabe. Durch das Widerrufen von Berechtigungen für diese Objekte werden die Objekte effektiv aus der Freigabe entfernt. Dadurch wird der Zugriff auf die Objekte in allen Verbraucherkonten, die eine Datenbank aus der Freigabe erstellt haben, deaktiviert.

Weitere Details dazu finden Sie unter Einführung in Secure Data Sharing und Verwenden von Freigaben.

Siehe auch:

GRANT <Berechtigung> … TO SHARE

REVOKE <Berechtigungen> … FROM ROLE

Syntax

REVOKE objectPrivilege ON
     {  DATABASE <name>
      | SCHEMA <name>
      | { TABLE <name> | ALL TABLES IN SCHEMA <schema_name> }
      | { VIEW <name> | ALL VIEWS IN SCHEMA <schema_name> }  }
  FROM SHARE <share_name>

Wobei:

objectPrivilege ::=
-- For DATABASE or SCHEMA
    USAGE
-- For TABLE or VIEW
    SELECT
-- For DATABASE
    REFERENCE_USAGE

Parameter

Name

Gibt den Bezeichner für das Objekt (Datenbank, Schema, Tabelle oder sichere Ansicht) an, für das die angegebene Berechtigung widerrufen wird.

Schemaname

Gibt den Bezeichner für das Schema an, für das die angegebene Berechtigung für alle Tabellen oder Ansichten widerrufen wird.

Freigabename

Gibt den Bezeichner für die Freigabe an, der die angegebene Berechtigung entzogen wird.

Nutzungshinweise

  • Mit Ausnahme von Tabellen und Ansichten muss jede Objektberechtigung einzeln für eine Rolle widerrufen werden. Mit einer ALL-Klausel können Sie die Berechtigung SELECT für alle Tabellen oder Ansichten in einem angegebenen Schema einer Rolle entziehen.

Beispiele

REVOKE SELECT ON VIEW mydb.shared_schema.view1 FROM SHARE share1;

REVOKE SELECT ON VIEW mydb.shared_schema.view3 FROM SHARE share1;

REVOKE USAGE ON SCHEMA mydb.shared_schema FROM SHARE share1;

REVOKE SELECT ON ALL TABLES IN SCHEMA mydb.public FROM SHARE share1;

REVOKE USAGE ON SCHEMA mydb.public FROM SHARE share1;

REVOKE USAGE ON DATABASE mydb FROM SHARE share1;

In diesem Beispiel wird es einer freigegebenen sicheren Ansicht untersagt, auf Objekte aus einer anderen Datenbank zu verweisen:

REVOKE REFERENCE_USAGE ON DATABASE database2 FROM SHARE share1;