Sie erstellen einen Benutzer in Oracle 10G mit dem Befehl "` Create user ". Hier ist die grundlegende Syntax und einige wichtige Überlegungen:
Grundlegende Syntax:
`` `SQL
Erstellen Sie den Benutzernamen, der durch Kennwort identifiziert wurde.
`` `
* `username` :Der Name, den Sie dem neuen Benutzer geben möchten. Dies sollte den Identifikatorregeln von Oracle folgen (alphanumerisch, bis zu 30 Zeichen, beginnend mit einem Buchstaben).
* `password` :Das Passwort für den neuen Benutzer. Oracle hat die Anforderungen an die Passwortkomplexität; Ein schwaches Passwort kann abgelehnt werden.
Beispiel:
`` `SQL
Erstellen Sie den von MySecurePassword123 identifizierten Benutzer John_DOE;
`` `
Privilegien gewähren:
Ein neu erstellter Benutzer hat keine Berechtigungen. Sie müssen ihnen ausdrücklich die erforderlichen Berechtigungen für den Zugriff auf Datenbankobjekte erteilen. Dies geschieht mit dem Befehl "Grant".
Zum Beispiel, um dem Benutzer `John_doe` die Möglichkeit zu gewähren, eine Verbindung zur Datenbank herzustellen und Tabellen zu erstellen:
`` `SQL
Grant Connect, Ressource an John_DOE;
`` `
* `connect` :Ermöglicht dem Benutzer, eine Verbindung zur Datenbank herzustellen.
* `Resource` :Ermöglicht dem Benutzer, Tabellen, Indizes usw. zu erstellen. Dies ist ein allgemeines Privileg für allgemeine Benutzer.
Andere wichtige Klauseln:
* `Standard Tablespace` :Gibt den Standard -Tablespace für die Daten des Benutzers an. Wenn es weggelassen wird, wird es standardmäßig mit dem System -Tablespace (der für neue Benutzer im Allgemeinen vermieden werden sollte).
* `Temporärer Tablespace` :Gibt den Tablespace für temporäre Tabellen an, die vom Benutzer verwendet werden.
* `quota` :Legt für den Benutzer in einem bestimmten Tablespace eine Speicherkontingentin (in MB oder K) fest. Dies verhindert, dass der Benutzer übermäßigen Speicherplatz verbraucht.
* `Profil`` :Weisen dem Benutzer ein Profil zu, das den Ressourcenverbrauch einschränken kann (CPU -Zeit, Speicher usw.). Profile sind nützlich, um die Ressourcennutzung über mehrere Benutzer hinweg zu verwalten.
Beispiel mit zusätzlichen Klauseln:
`` `SQL
Erstellen Sie die Benutzer jane_doe
Identifiziert durch AnothersecurePassword
Standard -Tablespace -Benutzer
Temporäre Temperatur Tisch
Quote 100m bei Benutzern
Profil Standard;
`` `
Dadurch wird ein Benutzer `jane_doe" mit einer Quote von 100 MB im Tabellenraum "Benutzer" erstellt. Es verwendet den Tablespace "Benutzer" für Daten und "temp" für temporäre Daten. Es verwendet auch das Standardprofil.
Wichtige Sicherheitsüberlegungen:
* Starke Passwörter: Verwenden Sie starke, eindeutige Passwörter, die schwer zu erraten sind.
* Kennwortverwaltung: Hardcode Passwörter in Skripten nicht. Erwägen Sie, die Kennwortverwaltungs -Tools oder Betriebssystemmechanismen von Oracle zu verwenden, um Passwörter sicher zu speichern und zu verwalten.
* Prinzip des geringsten Privilegs: Gewähren Sie den Benutzern nur die Berechtigungen, die sie unbedingt benötigen, um ihre Aufgaben auszuführen. Vermeiden Sie es, übermäßige Privilegien wie "Dba" zu gewähren, es sei denn, dies ist absolut erforderlich.
* reguläre Audits: Regelmäßig Benutzerkonten und Berechtigungen prüfen, um sicherzustellen, dass sie angemessen bleiben.
Ein Benutzer fallen lassen:
Verwenden Sie den Befehl "Drop user", um einen Benutzer (und alle zugeordneten Objekte) zu löschen:
`` `SQL
Drop der Benutzer John_Doe Cascade;
`` `
Die "Cascade" -Klausel ist entscheidend; Es stellt sicher, dass alle Objekte, die dem Benutzer gehören, ebenfalls gelöscht werden. Ohne "Cascade" schlägt der Tropfen fehl, wenn der Benutzer Objekte besitzt.
Denken Sie daran, immer als Benutzer mit den erforderlichen Berechtigungen (z. B. "sysdba" oder als Benutzer mit dem "Berechtigungsberechtigungen erstellen) eine Verbindung herzustellen, um diese Befehle auszuführen. Sichern Sie Ihre Datenbank immer, bevor Sie erhebliche Schema -Änderungen vornehmen.