Du skapar en användare i Oracle 10G med kommandot `Skapa användare. Här är den grundläggande syntaxen och några viktiga överväganden:
grundsyntax:
`` `SQL
Skapa användarens användarnamn som identifierats med lösenord;
`` `
* `användarnamn` :Namnet du vill ge den nya användaren. Detta bör följa Oracle's Identifier -regler (alfanumeriska, upp till 30 tecken, börjar med ett brev).
* `lösenord` :Lösenordet för den nya användaren. Oracle har krav på lösenordskomplexitet; Ett svagt lösenord kan avvisas.
Exempel:
`` `SQL
Skapa användare john_doe identifierad av mySecurePassword123;
`` `
beviljar privilegier:
En nyskapad användare har inga privilegier. Du måste uttryckligen ge dem de nödvändiga behörigheterna för att få åtkomst till databasobjekt. Detta görs med kommandot "Grant".
Till exempel för att ge användaren `john_doe 'förmågan att ansluta till databasen och skapa tabeller:
`` `SQL
Grant Connect, resurs till john_doe;
`` `
* `Connect` :Låter användaren ansluta till databasen.
* `resurs` :Gör det möjligt för användaren att skapa tabeller, index osv. Detta är ett vanligt privilegium för användare för allmänt syfte.
Andra viktiga klausuler:
* `Standard tabellutrymme` :Anger standard tabellen för användarens data. Om det utelämnas, är det standard till systemet tabellområdet (som i allmänhet bör undvikas för nya användare).
* `Tillfällig tabellområdet :Anger tabellen för tillfälliga tabeller som används av användaren.
* `kvoten` :Ställer in en lagringskvot (i MB eller K) för användaren inom ett specifikt tabellområde. Detta hindrar användaren från att konsumera överdrivet diskutrymme.
* `profil` :Tilldelar en profil till användaren, som kan begränsa resursförbrukningen (CPU -tid, minne etc.). Profiler är användbara för att hantera resursanvändning över flera användare.
Exempel med ytterligare klausuler:
`` `SQL
Skapa användare jane_doe
Identifierad av AnothersecurePassword
Standard TABLESPACE -användare
Tillfälligt tabellutrymme
Kvot 100m på användare
Profil standard;
`` `
Detta skapar en användare `jane_doe` med en kvot på 100MB i tabellen" Användare ". Den använder tabellen "Användare" för data och "temp" för tillfällig data. Den använder också standardprofilen.
Viktiga säkerhetsöverväganden:
* Starka lösenord: Använd starka, unika lösenord som är svåra att gissa.
* Lösenordshantering: Inte hardcode -lösenord i skript. Överväg att använda Oracle's lösenordshanteringsverktyg eller operativsystemmekanismer för att säkert lagra och hantera lösenord.
* princip för minst privilegium: Bevilja användare bara de privilegier som de absolut behöver för att utföra sina uppgifter. Undvik att bevilja överdrivna privilegier som `DBA 'såvida det inte är absolut nödvändigt.
* Regelbundna revisioner: Granskar regelbundet användarkonton och privilegier för att säkerställa att de förblir lämpliga.
Släpp en användare:
För att ta bort en användare (och alla dess tillhörande objekt) använder kommandot `drop user`:
`` `SQL
Släpp användaren John_Doe Cascade;
`` `
Klausulen "Cascade" är avgörande; Det säkerställer att alla objekt som ägs av användaren också raderas. Utan "kaskad" kommer droppen att misslyckas om användaren äger några objekt.
Kom ihåg att alltid ansluta sig som användare med nödvändiga privilegier (t.ex. `Sysdba` eller en användare med" Skapa användare "-privilegium) för att utföra dessa kommandon. Säkerhetskopiera alltid din databas innan du gör betydande schemaändringar.