Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 (Deutsch) » SQL Anywhere Server - SQL-Benutzerhandbuch » Gespeicherte Prozeduren, Trigger, Batches und benutzerdefinierte Funktionen » Prozeduren » Prozeduren und Funktionen zum Ausführen mit Eigentümer- oder Aufruferprivilegien einrichten » Systemprozeduren vor Version 16.0 als Aufrufer oder Definierer ausführen

 

Festlegen des von einer Datenbank benutzten Sicherheitsmodells (SQL)

Rufen Sie die Einstellung für das Sicherheitsmodell (Aufrufer gegen Definierer) auf, die bei der Datenbankerstellung oder beim Upgrade festgelegt wurde, indem Sie die Database-Eigenschaft Capabilities abfragen.

Voraussetzungen

Es gibt keine Voraussetzungen für diese Aufgabe.

Kontext und Bemerkungen

Standardmäßig werden in einer neuen Datenbank mit Privilegien verbundene Systemprozeduren nur mit dem INVOKER-Modell ausgeführt. Das bedeutet, dass Systemprozeduren vor Version 16.0, die mit Privilegien verbundene Vorgänge ausführen, mit den Privilegien des Benutzers ausgeführt werden, der die Prozedur aufruft. Diese Einstellung kann bei der Datenbankerstellung und beim Upgrade geändert werden. Sie können die festgelegte Einstellung des Sicherheitsmodells (Aufrufer gegen Definierer) mit dieser Methode ermitteln.

 Aufgabe
  • Melden Sie sich in Interactive SQL bei der Datenbank an und führen Sie folgende SQL-Anweisung aus:

    SELECT IF ((HEXTOINT(SUBSTRING(DB_PROPERTY('Capabilities'),1,LENGTH(DB_PROPERTY('Capabilities'))-20)) & 8) = 8)
    THEN 1
    ELSE 0
    END IF

Ergebnisse

1 bedeutet, dass Systemprozeduren vor Version 16.0, die mit Privilegien verbundene Vorgänge ausführen, mit den Privilegien des Aufrufermodells ausgeführt werden. 0 bedeutet, dass die Prozeduren mit den Privilegien des Definierers (Eigentümers) ausgeführt werden.

Nächste Schritte

Keine.

 Siehe auch