FirebirdSQL logo

Fein abgestufte Systemprivilegien

Firebird 4.0 gewährte Benutzern nicht nur volle Administratorrechte, sondern führte auch Systemprivilegien ein, die es ermöglichen, normalen Benutzern eine Untergruppe von Administratorrechten zu erteilen, die in der Vergangenheit nur auf SYSDBA und Administratoren beschränkt waren.Beispielsweise:

  • Führen Sie Dienstprogramme wie gbak, gfix, nbackup usw. aus

  • Fahren Sie eine Datenbank herunter und bringen Sie sie online

  • Verfolgen Sie die Anhänge anderer Benutzer

  • Greifen Sie auf die Überwachungstabellen zu

  • Führen Sie Management-Anweisungen . aus

Die Implementierung definiert einen Satz von Systemberechtigungen, analog zu Objektberechtigungen, aus denen Listen privilegierter Aufgaben Rollen zugewiesen werden können.

Es ist auch möglich, einem Systemprivileg normale Privilegien zu erteilen, wodurch sich das Systemprivileg wie ein spezieller Rollentyp verhält.

Die Systemprivilegien werden über CREATE ROLE und ALTER ROLE zugewiesen.

Warning

Beachten Sie, dass jedes Systemprivileg ein sehr geringes Maß an Kontrolle bietet.Für einige Aufgaben kann es erforderlich sein, dem Benutzer mehr als eine Berechtigung zu erteilen, um eine Aufgabe auszuführen.Fügen Sie beispielsweise IGNORE_DB_TRIGGERS zu USE_GSTAT_UTILITY hinzu, da gstat Datenbank-Trigger ignorieren muss.

Liste der gültigen Systemberechtigungen

In der folgenden Tabelle sind die Namen der gültigen Systemberechtigungen aufgeführt, die Rollen gewährt und entzogen werden können.

USER_MANAGEMENT

Benutzer verwalten (in der Sicherheitsdatenbank angegeben)

READ_RAW_PAGES

Seiten im Rohformat lesen mit Attachment::getInfo()

CREATE_USER_TYPES

Hinzufügen/Ändern/Löschen von Nicht-System-Datensätzen in RDB$TYPES

USE_NBACKUP_UTILITY

Verwenden von nbackup um Datenbankkopien zu erstellen

CHANGE_SHUTDOWN_MODE

Datenbank herunterfahren und online schalten

TRACE_ANY_ATTACHMENT

Verfolgen von Verbindungen anderer Benutzer

MONITOR_ANY_ATTACHMENT

Überwachen (Tabellen MON$) Anhänge anderer Benutzer

ACCESS_SHUTDOWN_DATABASE

Zugriff auf die Datenbank, wenn sie heruntergefahren ist

CREATE_DATABASE

Neue Datenbanken erstellen (in security.db angegeben)

DROP_DATABASE

Diese Datenbank löschen

USE_GBAK_UTILITY

Verwenden des gbak-Dienstprogramm

USE_GSTAT_UTILITY

Verwenden des gstat-Dienstprogramm

USE_GFIX_UTILITY

Verwenden des gfix-Dienstprogramm

IGNORE_DB_TRIGGERS

Engine anweisen, keine Trigger auf DB-Ebene auszuführen

CHANGE_HEADER_SETTINGS

Parameter auf der DB-Header-Seite ändern

SELECT_ANY_OBJECT_IN_DATABASE

Verwenden von SELECT für jedes auswählbare Objekt

ACCESS_ANY_OBJECT_IN_DATABASE

Zugriff (auf jede mögliche Weise) auf jedes Objekt

MODIFY_ANY_OBJECT_IN_DATABASE

Beliebiges Objekt ändern (bis zum Ablegen)

CHANGE_MAPPING_RULES

Authentifizierungszuordnungen ändern

USE_GRANTED_BY_CLAUSE

Verwenden von GRANTED BY in GRANT- und REVOKE-Anweisungen

GRANT_REVOKE_ON_ANY_OBJECT

GRANT- und REVOKE-Rechte für jedes Objekt in der Datenbank

GRANT_REVOKE_ANY_DDL_RIGHT

GRANT und REVOKE für alle DDL-Rechte

CREATE_PRIVILEGED_ROLES

Verwenden von SET SYSTEM PRIVILEGES in Rollen

MODIFY_EXT_CONN_POOL

Verwenden des Befehls ALTER EXTERNAL CONNECTIONS POOL

REPLICATE_INTO_DATABASE

Verwenden der Replikations-API, um Änderungssets in die Datenbank zu laden

docnext count = 0