Grundlagen der Objektprivilegien und Management in Oracle 12c

Die Entscheidung, die Privilegien für Datenbanken ist etwas, das jeder Datenbankadministrator (DBA) zu bestimmen hat. Eine Art von Privileg in Oracle 12c ist object Privilegien

die steuert den Datenzugriff und Modifikation.

Grundlagen der Objektberechtigungen in Oracle 12c

Sie können nur acht Objektberechtigungen erteilen:

  • WÄHLEN der Empfänger auswählen können Zeilen aus Tabellen

  • EINFÜGEN der Empfänger lässt Zeilen in Tabellen einfügen.

  • AKTUALISIEREN kann der Empfänger vorhandenen Zeilen in Tabellen ändern.

  • LÖSCHEN kann der Empfänger vorhandenen Zeilen aus Tabellen entfernen.

  • LITERATUR ermöglicht dem Benutzer, einen Blick auf, oder einen Fremdschlüssel, einer anderen Tabelle des Benutzers erstellen.

  • INDEX lässt ein Benutzer einen Index für eines anderen Benutzers Tabelle erstellen.

  • ÄNDERN lässt ein Benutzerwechsel oder auf die Struktur eines anderen Benutzers Tabelle hinzufügen.

  • AUSFÜHREN lässt die von einem anderen Benutzer im Besitz Empfänger laufen Verfahren.

Bewahren Sie diese Privileg Leckerbissen in den Sinn:

  • Wenn Sie ein Objekt besitzen, haben Sie automatisch alle Privilegien für das Objekt. Mit anderen Worten: Sie haben nicht SELECT auf dem eigenen Tisch gewährt werden.

  • Objektprivilegien nicht vom Besitzer eines Objekts widerrufen werden.

  • Was auch immer Schema besitzt das Objekt schließlich dieses Objekts Privilegien steuert.

  • Ohne ausdrückliche Zustimmung, sonst niemand die Objektberechtigungen des Objekts verwalten kann - na ja, niemand außer einem Benutzer, der das Systemprivileg GRANT ANY OBJECT haben könnte (in der Regel für DBAs vorbehalten).

  • Objekt Privileg kann von niemandem, aber die Person widerrufen werden, die es außer für jemanden mit dem GRANT ANY OBJECT Privileg gewährt. Nicht einmal kann der Besitzer ein Privileg auf ihr eigenes Objekt widerrufen, wenn sie nicht die grantor war.

Wie erfolgt die Objektberechtigungen in Oracle 12c verwalten

In den folgenden Schritten arbeiten die Benutzer MAGGIE, JASON und MATT in einer Datenbank, die Rezepte enthält. Dieses Beispiel verwendet Objektberechtigungen, damit sie mehr Rezepte anzuzeigen und hinzuzufügen.

  1. Maggie anmeldet.

  2. Maggie Typen die folgenden:

    Auf diese Weise können Benutzer MAGGIE JASON von ihrem VEGETARIAN_RECIPES Tabelle auswählen lassen. Sie sieht folgendermaßen aus:

Grants gelungen.

Ähnlich wie bei WITH ADMIN OPTION von Systemprivilegien, Objektprivilegien haben etwas mit GRANT OPTION genannt.

  • MAGGIE kann JASON erlauben zu können, in ihre Tabelle einfügen und erlauben JASON auf dieses Privileg weitergeben müssen:

  • JASON kann auf diesem INSERT-Privileg zu MATT passieren:

  • MAGGIE kann nicht das INSERT-Privileg von MATT widerrufen. Sie hat JASON zu bitten, dies zu tun.

  • Wenn JASON INSERT-Privilegien zu entziehen weigert sich, für MATT kann MAGGIE das Privileg von JASON und wiederum widerrufen, widerrufen, von MATT. Es nennt sich ein Cascading revoke. Beachten Sie, dass diese von Systemberechtigungen unterscheidet.

  • MAGGIE kann das INSERT-Privileg von JASON und in der Zwischenzeit automatisch widerrufen sie von MATT widerrufen:

    Sie sieht folgendermaßen aus:

    Entziehen gelungen.

Wenn ein Benutzer sehen möchte, welches Objekt Privileg sie haben gegeben, können sie die Ansicht USER_TAB_PRIVS abfragen.

Zum Beispiel kann MAGGIE sehen, welche Privilegien JASON auf ihre Objekte verlassen hat:

Sie sieht etwa so aus:

GRANTEE BESITZER TABLE_NAME GRANTOR PRIVILEGE ---------- ---------- ------------------ ------- --- ---------- JASON MAGGIE VEGETARIAN_RECIPES MAGGIE SELECT

Menü