| |
[ 08. August 2000]
- Martin_Nemecek
MySQL Φas¥ dvanßsta - BezpeΦnos¥ a pridßvanie u₧φvate╛a do db
Je sφce hor·ce leto a asi by bolo lepÜie niekde pri vode, len₧e aj pracova¥ treba a preto sa aj dnes ponorφme do naÜich MySQL tabuliek a povieme si opΣ¥ pßr d⌠le₧it²ch informßciφ. Naprφklad aj o tom, ako vytvori¥ u₧φvate╛a k naÜej databßze so Üpecißlne obmedzen²mi prφstupov²mi prßvami na prßcu s ≥ou.
Doteraz sme sa pracovali s naÜou cviΦnou db s nßzvom "test" na ktor· sme pristupovali ako u₧φvate╛ "root" a bola bez hesla. Z bezpeΦnostnΘho h╛adiska je vÜak tak²to prφstup na databßzu maximßlne nevhodn² a neprφpustn². Samozrejem pre naÜe cviΦnΘ ·Φely to postaΦovalo. Ke∩ vÜak budeme chcie¥ vytvori¥ nejak· ost· db s nejak²mi d⌠le₧it²mi ·dajmi, bude potrebnΘ vytvori¥ pre ≥u ÜpecißlnΘho u₧φvate╛a, ktor² bude sl·₧i¥ na prφstup do db ostatn²m u₧φvate╛om (Φi u₧ internetu, alebo intranetu), ktor² bud· ma¥ presne vymedzenΘ prßva na prßcu s naÜou db.
Ako vytvori¥ db sme si u₧ vraveli, ale nebude na Ükodu si to trochu zopakova¥.
Najsk⌠r sa prihlßsime do mysql pod u₧φvate╛om "root" :
C:mysqlbin>mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or g.
Your MySQL connection id is 2 to server version: 3.21.29a-gamma-debug
Type 'help' for help.
mysql>
A teraz m⌠₧eme vytvori¥ databßzu. Pomenujeme ju "db_ostra" a vytvorφme ju pomocou prφkazu "create database" :
mysql> create database db_ostra;
Query OK, 1 row affected (0.05 sec)
Takto nejak by sme to robili na Windowse, ukß₧me si aj postup na Linuxe (rep. vÜeobecne na UNIXe):
Predpokladajme, ₧e MySQL mßme nainÜtalovan· a funkΦn· v adresßri: /usr/local/mysql.
Potom vytvorenie db zrealizujeme nasledovne pomocou "mysqladmin":
bin/mysqladmin -uroot -p create database_name
Po zadanφ hesla pre u₧φvate╛a "root" sa nßm databßza "database_name" vytvorφ.
Prihlßsime sa do nej nasledovne:
bin/mysql -uroot -p database_name
No to by sme mali. Po∩me teraz ∩alej a sk·sme si vytvori¥ novΘho u₧φvate╛a pre naÜu db a pridajme mu prφstupovΘ prßva ako sme si s╛·bili v ·vode.
Predpokladajme teda ₧e potrebujeme do naÜej "db_ostra" pristupova¥ povedzme pomocou PHP scriptu a nechceme to realizova¥ cez u₧φvate╛a "root" (Φo je absol·tna blbos¥ a tomuto sa raΦÜej vyhnite). Vzh╛adom na zjednoduÜenie si vytvorφme u₧φvate╛a s rovnak²m nßzvom ako je nßzov db a pridelφme mu prφstupovΘ prßva pre Φφtanie, vkladanie, zmenu ·dajov a mazanie. Tento u₧φvate╛ bude ma¥ obmedzen² prφstup do db a to mo₧nos¥ou logova¥ sa do db len z localhostu (teda lokßlnΘho poΦφtaΦa, kde be₧φ db).
CelΘ toto realizujeme jednoduch²m pou₧itφm prφkazu GRANT - nasleduj·cim sp⌠sobom:
mysql> GRANT SELECT ,INSERT ,UPDATE ,DELETE
ON db_ostra.*
TO db_ostra@localhost
IDENTIFIED BY 'moje_heslo';
Pozn. Nie je to mo₧no dostatoΦne zrete╛nΘ, ale ke∩ sa na tento zßpis pozriete lepÜie zistφte, ₧e je to jednoduchΘ. Len si je potrebnΘ uvedomi¥, ₧e nßzov databßzy je "db_ostra" a aj nßzov u₧φvate╛a je "db_ostra" s heslom 'moje_heslo'.
Na dnes by to aj hßdam staΦilo, ale u₧ teraz sa m⌠₧ete teÜi¥ na ∩alÜiu Φas¥ nßÜho serißlu v ktorej sa budeme venova¥ exportu a importu ·dajov a dßt v SQL.
|
|
| |
|
"MySQL Φas¥ dvanßsta - BezpeΦnos¥ a pridßvanie u₧φvate╛a do db" | Login / vytvor konto | 0 Komentßrov |
|
Za obsah komentßrov je zodpovedn² u₧φvate╛, nie prevßdzkovate╛ t²chto strßnok. |
|