Beginnen Sie wie immer mit der Verbindung zu Ihrem Server, auf dem Oracle gehostet wird, und verbinden Sie sich dann mit Oracle selbst als SYSTEM
Konto.
Das SYSTEM
account ist eines von wenigen vordefinierten Administratorkonten, die bei der Installation von Oracle automatisch generiert werden. SYSTEM
ist in der Lage, die meisten administrativen Aufgaben zu erledigen, aber die Aufgabe, an der wir besonders interessiert sind, ist die Kontoverwaltung.
Erstellen eines Benutzers
Einmal als SYSTEM
verbunden , geben Sie einfach den CREATE USER
ein Befehl zum Generieren eines neuen Kontos.
CREATE USER books_admin IDENTIFIED BY MyPassword;
Hier erstellen wir einfach einen books_admin
Konto, das IDENTIFIED
ist oder durch das angegebene password
authentifiziert werden .
Die Zuschusserklärung
Mit unserem neuen books_admin
Konto erstellt haben, können wir nun mit dem Hinzufügen von Privilegien zum Konto beginnen, indem wir den GRANT
verwenden Erklärung. GRANT
ist eine sehr mächtige Anweisung mit vielen möglichen Optionen, aber die Kernfunktionalität besteht darin, die Privilegien beider users
zu verwalten und roles
in der gesamten Datenbank.
Rollen bereitstellen
Normalerweise möchten Sie dem Benutzer zuerst Berechtigungen zuweisen, indem Sie das Konto verschiedenen Rollen zuordnen, beginnend mit CONNECT
Rolle:
GRANT CONNECT TO books_admin;
Um einen leistungsfähigeren Benutzer zu erstellen, können Sie in einigen Fällen auch das Hinzufügen von RESOURCE
in Betracht ziehen Rolle (die es dem Benutzer ermöglicht, benannte Typen für benutzerdefinierte Schemas zu erstellen) oder sogar der DBA
Rolle, die es dem Benutzer ermöglicht, nicht nur benutzerdefinierte benannte Typen zu erstellen, sondern sie auch zu ändern und zu zerstören.
GRANT CONNECT, RESOURCE, DBA TO books_admin;
Privilegien zuweisen
Als Nächstes sollten Sie sicherstellen, dass der Benutzer berechtigt ist, sich tatsächlich mit der Datenbank zu verbinden und eine Sitzung mit GRANT CREATE SESSION
zu erstellen . Wir werden das auch mit allen Privilegien kombinieren, indem wir GRANT ANY PRIVILEGE
verwenden .
GRANT CREATE SESSION GRANT ANY PRIVILEGE TO books_admin;
Wir müssen auch sicherstellen, dass unserem neuen Benutzer Speicherplatz im System zugewiesen ist, um Tabellen und Daten tatsächlich zu erstellen oder zu ändern, also werden wir GRANT TABLESPACE
so:
GRANT UNLIMITED TABLESPACE TO books_admin;
Tabellenberechtigungen
Obwohl dies in neueren Versionen von Oracle normalerweise nicht erforderlich ist, erfordern einige ältere Installationen möglicherweise, dass Sie die Zugriffsrechte, die der neue Benutzer auf ein bestimmtes Schema und Datenbanktabellen hat, manuell angeben.
Zum Beispiel, wenn wir unseren books_admin
wollen Benutzer die Möglichkeit haben, SELECT
auszuführen , UPDATE
, INSERT
, und DELETE
Funktionen in den books
Tabelle, könnten wir den folgenden GRANT
ausführen Aussage:
GRANT
SELECT,
INSERT,
UPDATE,
DELETE
ON
schema.books
TO
books_admin;
Dadurch wird sichergestellt, dass books_admin
kann die vier grundlegenden Anweisungen für die books
ausführen Tabelle, die Teil des schema
ist Schema.