Maak zoals altijd eerst verbinding met uw server waar Oracle wordt gehost en maak vervolgens verbinding met Oracle zelf als het SYSTEM
account.
Het SYSTEM
account is een van de weinige vooraf gedefinieerde beheerdersaccounts die automatisch worden gegenereerd wanneer Oracle wordt geïnstalleerd. SYSTEM
is in staat om de meeste administratieve taken uit te voeren, maar de taak waarin we vooral geïnteresseerd zijn, is accountbeheer.
Een gebruiker aanmaken
Eenmaal verbonden als SYSTEM
, geef gewoon de CREATE USER
commando om een nieuw account aan te maken.
CREATE USER books_admin IDENTIFIED BY MyPassword;
Hier maken we gewoon een books_admin
account dat IDENTIFIED
is of geverifieerd door het opgegeven password
.
De subsidieverklaring
Met onze nieuwe books_admin
account gemaakt, kunnen we nu beginnen met het toevoegen van privileges aan het account met behulp van de GRANT
uitspraak. GRANT
is een zeer krachtig statement met veel mogelijke opties, maar de kernfunctionaliteit is het beheren van de privileges van beide users
en roles
door de hele database.
Rollen verstrekken
Meestal wilt u eerst rechten toewijzen aan de gebruiker door het account aan verschillende rollen te koppelen, te beginnen met de CONNECT
rol:
GRANT CONNECT TO books_admin;
In sommige gevallen kunt u, om een krachtigere gebruiker te creëren, ook overwegen de RESOURCE
. toe te voegen rol (waardoor de gebruiker benoemde typen voor aangepaste schema's kan maken) of zelfs de DBA
rol, waarmee de gebruiker niet alleen aangepaste benoemde typen kan maken, maar ze ook kan wijzigen en vernietigen.
GRANT CONNECT, RESOURCE, DBA TO books_admin;
Bevoegdheden toewijzen
Vervolgens moet u ervoor zorgen dat de gebruiker privileges heeft om daadwerkelijk verbinding te maken met de database en een sessie te maken met behulp van GRANT CREATE SESSION
. We zullen dat ook combineren met alle privileges met behulp van GRANT ANY PRIVILEGE
.
GRANT CREATE SESSION GRANT ANY PRIVILEGE TO books_admin;
We moeten er ook voor zorgen dat onze nieuwe gebruiker schijfruimte in het systeem heeft toegewezen om tabellen en gegevens daadwerkelijk te maken of te wijzigen, dus we zullen GRANT TABLESPACE
zoals zo:
GRANT UNLIMITED TABLESPACE TO books_admin;
Tabelrechten
Hoewel dit normaal gesproken niet nodig is in nieuwere versies van Oracle, kunnen sommige oudere installaties vereisen dat u handmatig de toegangsrechten opgeeft die de nieuwe gebruiker heeft tot een specifiek schema en databasetabellen.
Als we bijvoorbeeld willen dat onze books_admin
gebruiker de mogelijkheid hebben om SELECT
. uit te voeren , UPDATE
, INSERT
, en DELETE
mogelijkheden op de books
tabel, kunnen we de volgende GRANT
uitvoeren:verklaring:
GRANT
SELECT,
INSERT,
UPDATE,
DELETE
ON
schema.books
TO
books_admin;
Dit zorgt ervoor dat books_admin
kan de vier basisinstructies uitvoeren voor de books
tabel die deel uitmaakt van het schema
schema.