Erteilt die Mitgliedschaft in Gruppen, erstellt neue Benutzer IDs, erteilt oder ändert Berechtigungen für angegebene Benutzer und erstellt oder ändert Kennwörter.
GRANT authority, ... TO userid, ...
authority : BACKUP | DBA | PROFILE | READCLIENTFILE | READFILE | [ RESOURCE | ALL ] | VALIDATE | WRITECLIENTFILE
GRANT { GROUP | MEMBERSHIP IN GROUP userid, ... } TO userid, ...
GRANT permission, ... ON [ owner.]object-name TO userid, ... [ WITH GRANT OPTION ] [ FROM userid ]
permission : ALL [ PRIVILEGES ] | ALTER | DELETE | INSERT | REFERENCES [ ( column-name, ... ) ] | SELECT [ ( column-name, ... ) ] | UPDATE [ ( column-name, ... ) ]
AT starting-id-Klausel Diese Klausel ist nicht für den allgemeinen Gebrauch bestimmt. Die Klausel gibt den internen nummerischen Wert an, der für die erste Benutzer-ID in der Liste verwendet werden soll.
Die AT-Start-ID-Klausel wird vom Unload-Dienstprogramm verwendet.
GRANT Datenbankberechtigung (Klausel) Verwenden Sie diese Klausel, um eine der nachstehend aufgelisteten Datenbankberechtigungen zu erteilen:
BACKUP-Datenbankberechtigung Damit wird dem Benutzer die Berechtigung erteilt, die Datenbank zu sichern.
DBA-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, alle Aufgaben durchzuführen. Im Allgemeinen ist sie für die Person der Organisation reserviert, die die Datenbank betreut.
PROFILE-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, Profilerstellungs- und Diagnosevorgänge auszuführen.
READCLIENTFILE-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, aus einer Datei auf dem Clientcomputer zu lesen, zum Beispiel beim Laden von Daten.
READFILE-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, eine SELECT-Anweisung unter Verwendung der OPENSTRING-Klausel mit einer Datei auszuführen.
RESOURCE- oder ALL-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, Tabellen und Ansichten zu erstellen. ALL ist gleichbedeutend mit RESOURCE und daher mit Adaptive Server Enterprise kompatibel.
VALIDATE-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, die Validierungsvorgänge auszuführen, die von den verschiedenen VALIDATE-Anweisungen unterstützt werden, wie Datenbank validieren, Tabellen und Indizes validieren und Prüfsummen validieren. Überdies ermöglicht sie es dem Benutzer, das Validierungsdienstprogramm (dbvalid) und den Assistenten zur Validierung der Datenbank in Sybase Central zu verwenden.
WRITECLIENTFILE-Datenbankberechtigung Damit erhält der Benutzer die Berechtigung, in eine Datei auf dem Clientcomputer zu schreiben, zum Beispiel beim Entladen von Daten.
GROUP-Klausel Diese Berechtigung erteilt dem Benutzer oder den Benutzern das Recht, Mitglieder zu haben.
MEMBERSHIP IN GROUP-Klausel Mit dieser Berechtigung wird einem Benutzer die Mitgliedschaft in einer Gruppe zugewiesen. Der Benutzer erbt alle erbbaren Berechtigungen und Datenbankberechtigungen, die für die Gruppe erteilt wurden.
GRANT permission-Klausel Mit der Klausel GRANT permission können Sie Berechtigungen für einzelne Tabellen oder Ansichten erteilen. Die Tabellen- und Ansichtsberechtigungen können einzeln angegeben werden, oder Sie können ALL verwenden, um alle Berechtigungen gleichzeitig zu erteilen. Im Folgenden finden Sie eine Liste von Berechtigungen, die erteilt werden können:
ALL-Berechtigung Damit werden die ALTER-, DELETE-, INSERT-, REFERENCES-, SELECT- und UPDATE-Berechtigungen für Tabellen erteilt. Damit werden die DELETE-, INSERT- und UPDATE-Berechtigungen für Ansichten erteilt.
ALTER-Berechtigung Mit dieser Berechtigung kann der Benutzer die benannte Tabelle mit der ALTER TABLE-Anweisung ändern. Diese Berechtigung gilt nicht für Ansichten.
DELETE-Berechtigung Mit dieser Berechtigung kann der Benutzer Zeilen aus der benannten Tabelle oder Ansicht löschen.
INSERT-Berechtigung Mit dieser Berechtigung kann der Benutzer Zeilen in die benannte Tabelle oder Ansicht einfügen.
REFERENCES-Berechtigung Damit kann der Benutzer Indizes für die benannte Tabelle und für die Fremdschlüssel erstellen, die die benannten Tabellen referenzieren. Wenn Spaltennamen angegeben sind, kann der Benutzer nur diese Spalten referenzieren. REFERENCES-Berechtigungen für Spalten können lediglich für Tabellen und nicht für Ansichten erteilt werden. INDEX ist ein Synonym für REFERENCES.
SELECT-Berechtigung Damit kann der Benutzer Informationen in einer Ansicht oder Tabelle anzeigen. Wenn Spaltennamen angegeben sind, können die Benutzer lediglich diese Spalten ansehen. SELECT-Berechtigungen für Spalten können nur für Tabellen und nicht für Ansichten erteilt werden.
UPDATE-Berechtigung Damit kann der Benutzer Informationen in einer Ansicht oder Tabelle aktualisieren. Wenn Spaltennamen angegeben sind, kann der Benutzer nur diese Spalten aktualisieren.
WITH GRANT OPTION-Klausel Wenn WITH GRANT OPTION angegeben ist, erhält die angegebene Benutzer-ID auch die Berechtigung, dieselben Berechtigungen an andere Benutzer-IDs weiterzugeben. Mitglieder von Gruppen erben WITH GRANT OPTION nicht, wenn dies einer Gruppe erteilt wird.
FROM-Klausel Wenn FROM userid angegeben ist, wird die userid als die Benutzer-ID des Berechtigungsverleihers in den Systemtabellen registriert. Dieses Klausel ist für das Entlade-Dienstprogramm (dbunload) vorgesehen. Verändern oder verwenden Sie diese Option nicht direkt.
Es wird empfohlen, die CREATE-Anweisung zu verwenden, um Benutzer zu erstellen.
GRANT CONNECT TO userid IDENTIFIED BY ""; |
Um einen Benutzer ohne Kennwort zu erstellen, verwenden Sie folgende Angaben:
GRANT CONNECT TO userid; |
Ein Benutzer ohne Kennwort kann keine Verbindung zur Datenbank herstellen. Das ist sinnvoll, wenn Sie eine Gruppe erstellen und nicht möchten, dass jemand mit der Benutzer-ID der Gruppe eine Verbindung zur Datenbank herstellt. Eine Benutzer-ID muss ein gültiger Bezeichner sein.
Benutzer-IDs dürfen Folgendes nicht:
Kennwörter berücksichtigen die Groß- und Kleinschreibung. Im Übrigen gilt Folgendes:
Mit der Option verify_password_function können Sie eine Funktion zum Implementieren von Kennwortregeln angeben (z.B., dass Kennwörter mindestens eine Ziffer enthalten müssen). Wenn eine Funktion zur Kennwortüberprüfung verwendet wird, können Sie nicht mehr als eine Benutzer-ID mit Kennwort in der GRANT CONNECT-Anweisung angeben.
CREATE ON-Klausel Damit kann der Benutzer Datenbankobjekte im angegebenen DBSpace erstellen. Die CREATE-Berechtigung kann über Gruppenmitgliedschaft vererbt werden. Bevor ein Benutzer Objekte erstellen kann, muss er auch RESOURCE-Datenbankberechtigung erhalten.
GRANT USAGE ON SEQUENCE-Klausel Ermöglicht es Benutzern, den aktuellen oder nächsten Wert in einer Sequenz auszuwerten. Sie müssen über die DBA-Berechtigung verfügen oder Ersteller der Sequenz sein, um diese Anweisung ausführen zu können. Wenn die Sequenz Teil einer DEFAULT-Klausel für eine Tabelle ist, muss jeder Benutzer, der eine Zeile in die Tabelle einfügt, über die Berechtigung für die Sequenz verfügen.
Die GRANT-Anweisung wird benutzt, um Datenbankberechtigungen und Berechtigungen an bestimmte Benutzer-IDs und Gruppen zu erteilen. Sie wird außerdem verwendet, um Benutzer und Gruppen zu erstellen.
Sie können Berechtigungen für deaktivierte Objekte erteilen. Berechtigungen für deaktivierte Objekte werden in der Datenbank gespeichert und werden bei Aktivierung des Objekts wirksam.
Syntax 4 der GRANT-Anweisung wird verwendet, um die Berechtigung zum Ausführen einer Prozedur zu erteilen.
Syntax 5 der GRANT-Anweisung erstellt eine explizite Zuordnung des integrierten Logins zwischen einem oder mehreren Windows-Benutzer- bzw. Gruppenprofilen und einer bestehenden Datenbankbenutzer-ID. Diese ermöglicht es Benutzern, die sich am lokalen Computer angemeldet haben, eine Verbindung mit einer Datenbank herzustellen, ohne eine Benutzer-ID oder ein Kennwort eingeben zu müssen. Der user-profile-name kann die Form domain\user-name haben. Die Datenbankbenutzer-ID, der das integrierte Login zugeordnet ist, muss ein Kennwort haben.
Syntax 6 der GRANT-Anweisung erstellt eine Kerberos-authentifizierte Login-Zuordnung von einem oder mehreren Kerberos-Prinzipal(en) zu einer bestehenden Datenbankbenutzer-ID. Damit können Benutzer, die sich bei Kerberos angemeldet haben (Benutzer, die in Kerberos über ein gültiges Ticket-erteilendes Ticket verfügen), eine Verbindung zu einer Datenbank herstellen, ohne eine Benutzer-ID oder ein Kennwort angeben zu müssen. Die Datenbankbenutzer-ID, der das Kerberos-Login zugeordnet ist, muss ein Kennwort haben. Der client-Kerberos-principal muss das Format Benutzer/Instanz@REALM haben, wobei /Instanz optional ist. Der vollständige Prinzipal muss einschließlich des Realms angegeben werden, und Prinzipale, die sich nur in Instanz oder Realm unterscheiden, werden unterschiedlich behandelt.
Bei Prinzipalen wird die Groß-/Kleinschreibung berücksichtigt, d.h., sie müssen in der korrekten Schreibweise angegeben werden. Zuordnungen für mehrere Prinzipale, die sich nur in der Groß- und Kleinschreibung unterscheiden, werden nicht unterstützt (z.B. können Sie keine Zuordnungen für jjordan@MYREALM.COM und JJordan@MYREALM.COM erhalten).
Wenn es keine explizite Zuordnung für einen Kerberos-Prinzipal gibt und die Guest-Datenbankbenutzer-ID existiert und ein Kennwort hat, dann stellt der Kerberos-Prinzipal die Verbindung her, indem er die Guest-Datenbankbenutzer-ID verwendet (dieselbe Guest-Datenbankbenutzer-ID wie bei integrierten Logins).
Syntax 3 Wenn die FROM-Klausel angegeben ist, brauchen Sie die DBA-Berechtigung. Ansonsten müssen Sie entweder Eigentümer der Tabelle sein oder Berechtigungen für die Tabelle mit WITH GRANT OPTION erhalten haben.
Syntax 4 Sie müssen entweder Eigentümer der Prozedur sein oder DBA-Berechtigungen haben.
Syntax 5 und 6 Sie müssen DBA-Berechtigungen haben.
Syntax 7 Sie müssen entweder Ihr eigenes Kennwort mit GRANT CONNECT ändern oder die DBA-Berechtigung haben.
Automatisches Festschreiben (Autocommit).
SQL/2008 Syntax 3 ist eine Kernfunktion des SQL/2008-Standards. Bei Syntax 3 ist die FROM-Klausel eine Erweiterung des Herstellers, ebenso die ALTER-Berechtigung. Im SQL/2008-Standard ist statt der optionalen ALL PRIVILEGES-Syntax das PRIVILEGES Schlüsselwort obligatorisch.
Syntax 4 ist ebenfalls eine Kernfunktion des SQL/2008-Standards zum Erteilen von EXECUTE-Berechtigungen für gespeicherte Prozeduren.
Syntax 9 ist Teil der optionalen SQL/2008-Sprachenfunktion T176.
Alle anderen Syntaxen sind Erweiterungen des Herstellers.
Erstellen Sie einen neuen Datenbankbenutzer.
GRANT CONNECT TO SQLTester IDENTIFIED BY welcome |
Erteilen Sie dem Benutzer 'Laurel' Berechtigungen für die Tabelle 'Employees'.
GRANT SELECT, UPDATE ( Street ) ON Employees TO Laurel; |
In einer einzigen Anweisung können mehrere Berechtigungen erteilt werden. Trennen Sie die Berechtigungen mit Kommas.
Ermöglichen Sie dem Benutzer 'Hardy' das Ausführen der Prozedur 'Calculate_Report'.
GRANT EXECUTE ON Calculate_Report TO Hardy; |
![]() |
Kommentieren Sie diese Seite in DocCommentXchange.
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |