Het gebruik van Password File Authenticatie

Dit onderdeel beschrijft hoe een administratieve user met behulp van een password file geauthenticeerd kan worden:

 

Voorbereiden om het gebruik van Password File Authenticatie mogelijk te maken


Om het gebruik van Password File Authenticatie mogelijk te maken moet het volgende gebeuren:

Creëer een operating system account voor de user.
Als deze nog niet gemaakt is, maak een password file met de ORAPWD utility:

ORAPWD FILE=filenaam PASSWORD=wachtwoord ENTRIES=maximaal_aantal_user
Zet de REMOTE_LOGIN_PASSWORDFILE init parameter op EXCLUSIVE.
Connect aan de database als user SYS (of als een andere user met de administratieve privileges).
Als de user nog niet in de database bestaat, maak hem aan en geeft hem SYSDBA of SYSOPER system privilege:

GRANT SYSDBA to oe;


Dit statement voegt de user aan de password file toe, en geeft hem de mogelijkheid om “AS SYSDBA.”te connecten.

 

Connecten Met Password File Authenticatie


Administratieve users kunnen connecten and geauthenticeerd worden aan een local of remote database door gebruik te maken van het SQL*Plus CONNECT commando Zij moeten connecten met hun usernaam en password en de AS SYSDBA of AS SYSOPER clausule. Bijvoorbeeld, de user oe heeft het SYSDBA privilege gekregen en kan als volgt aanloggen:

 

CONNECT oe/oe AS SYSDBA



Echter oe heeft niet het SYSOPER privilege, zodat het volgende commando fout zal gaan:


CONNECT oe/oe AS SYSOPER



Let op:
Operating system authenticatie gaat voor password file authenticatie. Als je lid bent van de OSDBA of OSOPER groep voor het operating system, en je connect as SYSDBA of SYSOPER, dan zal je met de bijbehorende administratieve privileges aanloggen, ongeacht het usernaam/wachtwoord dat je specificeert.

Als je geen lid bent van de OSDBA of OSOPER groep , en je staat niet in de passwordfile, dan zal de connective mislukken

Creëren en onderhouden van een Password File


Je kan een password file aanmaken met de passwordfile creatie utility ORAPWD. Voor sommige operating systems, kan je deze file aanmaken als onderdeel van de standaard installatie.
De volgende onderdelen worden behandeld:

• Het gebruik van ORAPWD
• Het zetten van de ROMOTE_LOGIN_PASSWORDFILE init.parameter
• Users toevoegen aan een Password File
• Het onderhouden van de Password File

Het gebruik van ORAPWD


Als je deze utility gebruikt en je geeft niet de juiste parameter mee dan krijg je een foutmelding welke aangeeft dat het juiste gebruik van de password file er als het volgende voorbeeld uit moet zien:

orapwd
Usage: orapwd file=<fname> password=<password> entries=<users>
where
file - name of password file (mand),
password - password for SYS (mand),
entries - maximum number of distinct DBAs and OPERs (opt),
There are no spaces around the equal-to (=) character.


Het volgende commando creëert een password file genaamd acct.pwd dat 30 users met verschillende wachtwoorden toestaat.
In dit voorbeeld wordt de file initieel aangemaakt met het wachtwoord secret, voor users die ‘as sys’aanloggen.

 

orapwd FILE=acct.pwd PASSWORD=secret ENTRIES=30 


De parameters in de ORAPWD utility worden in de volgende onderdelen besproken.

FILE
Deze parameter zet de naam van password file die gemaakt wordt. Je moet het hele pathnaam opgeven voor de file. De inhoud van de file wordt encrypted en kan niet direct gelezen worden. Deze parameter is verplicht.
De typen filenamen die gebruikt mogen worden is ook os afhankelijk. Sommige Operating systems willen dat de naam aan een specifiek formaat voldoet en in een bepaalde directory terechtkomt, andere staan het weer toe om omgevingsvariabelen te gebruiken om de naam en de directory aan te geven.
Als je meerdere instances gebruikt middels Oracle Real Application Clusters, zal de omgevingsvariabele voor ieder intance naar dezelfde password file moeten wijzen.

Pas op:
Het is belangrijk voor de security van je system dat je je password file en de omgevingsvariabelen die de loctaie van je file aangeven, beschermt. Iedere user die er toegang naar heeft is een potentieel gevaar voor de beveiliging van de connectie.


PASSWORD

Deze parameter zet het wachtwoord voor de user SYS. Als je het ALTER USER statement gebruikt om het wachtwoord te veranderen van sys, nadat je bent aangelogd op de database, zal zowel het wachtwoord in de data dictionary als die in het password file geupdate worden. Deze parameter is verplicht.

Let op:
Je kan niet het wachtwoord voor sys veranderen als de init parameter REMOTE_LOGON_PASSWORDFILE op SHARED is gezet. Als je het wel probeert krijg je een error melding.


ENTRIES
Deze parameter specificeert het aantal entries die de password file kan accepteren. Dit nummer komt overeen met het aantal distinct users die als SYSDBA of SYSOPER in mogen loggen. Het echte aantal van toegestane users kan hoger zijn dan het aantal users, omdat de ORAPWD utility doorgaat met het toekennen van password entries totdat een operating system block is gevuld. Als bijvoorbeeld een operating system block size 512 bytes is, houdt het 4 password entries. Het aantal password entries dat gealocceerd wordt is altijd een veelvoud van 4.
Entries kun hergebruikt worden als users toegevoegd en verwijderd worden van de password file.
Als je van plan bent om REMOTE_LOGON_PASSWORDFILE=EXCLUSIVE, te specificeren en het toekennen van SYSDBA en SYSOPER privileges aan users, dan is deze parameter verplicht.

Let op:
Als je het aantal gealloceerde password file entries overschreidt, zal je een nieuwe passwordfile moeten maken. Om dit te vermijden moet je het aantal dat je ooit denkt nodig te hebben altijd iets hoger zetten.
Het zetten van REMOTE_LOGIN_ PASSWORDFILE
Bij het maken van een passwordfile moet je ook de init parameter REMOTE_LOGIN_PASSWORDFILE op de juiste waarde zetten. De waarden dei herkend worden zijn:
• NONE: Zorgt er voor dat de database zich gedraagt als of er geen password file bestaat. Ofwel geen privileged connecties zijn toegestaan over non secure connecties. NONE is de default waarde voor deze parameter.
• EXCLUSIVE: Een EXCLUSIVE password file kan met maar 1 database gebruikt worden. Alleen een EXCLUSIVE file kan de namen van andere users dan sys bevatten. Met het gebruik van een EXCLUSIVE password file kan je SYSDBA en SYSOPER system rivileges aan individuele users toekennen en hen als zichzelf laten aanloggen.
• SHARED: Een SHARED password file kan ebruikt worden bij meerdere databases die op 1 server draaien. Maar let wel dat de enige user die herken dwordt door een SHARED password file SYS is. Je kan geen users toevoegen aan een SHARED password file. Alle users dei SYSDBA of SYSOPER system privileges nodig hebben, moeten met de zelfde naam (SYS) en wachtwoord. Deze optie is handig als je 1 DBA hebt die meerdere databases beheerd.


Suggestie:


Om de hoogst mogelijke level van security te bereiken is het zaak om de REMOTE_LOGIN_PASSWORDFILE init parameter op EXCLUSIVE te zetten, gelijk na het creëren van de password file.
Users toevoegen aan een Password File
Als je SYSDBA of SYSOPER privileges aan een user toekent, zal de naam en zijn privilege informatie in de password file toegevoegd worden. Als de server niet de juiste init parameters heeft gezet, REMOTE_LOGIN_PASSWORDFILE is NONE of SHARED), dan zal Oracle met een foutmelding komenals je de privileges wilt toekennen.
De naam van een users zal in de password file blijven zolang hij een van beide privileges heeft. Als je beide privilges innneemt zal Oracle de naam uit de passwordfile verwijderen

Omdat SYSDBA en SYSOPER de meest krachtige database privileges zijn, wordt de WITH ADMIN OPTION niet gebruikt in het GRANT statement. Met andere woorden, de grantee ( degene die het privilege heeft gekregen) kan op zijn beurt het privilege niet aan een andere user doorgeven. Alleen een user die huidig is geconnect als SYSDBA kan deze of het SYSOPER system privileges.innemen of uitgeven. Deze privileges kunnen niet aan rollen gekoppeld worden omadt rollen pas beschikbaar zijn nadat de database is opgestart. Zorg ervoor dat je SYSDBA en SYSOPER database privileges niet met operating system rollen verward.

 

Het bekijken van Password File leden


Met de V$PWFILE_USERS kan je zien welke users SYSDBA of SYSOPER system privileges voor een database hebben gekregen. De volgende kolommen worden weergegeven:

 Column  Omschrijving
 USERNAME  De naam die herkend wordt door de password file
 SYSDBA  Als de waarde TRUE, is dan kan de user met SYSDBA system privileges aanloggen
 SYSOPER  Als de waarde TRUE, is dan kan de user met SYSOPER system privileges aanloggen.

 

 zie ook:


Het gebruik van OS Authenticatie

Het onderhouden van een password file

 

Advertentie

>

Poll

Voorkeur
 

Wie is er aanwezig

We hebben 72 gasten online