Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Pripojte sa k MySQL ako privilegovaný používateľ:
Najprv sa musíte pripojiť k svojmu serveru MySQL ako používateľ s administratívnymi oprávneniami (napríklad „root“). Použite klienta MySQL:
`` `Bash
mysql -u root -p
`` `
Po výzve zadajte heslo root.
2. Vytvorte používateľa:
Na vytvorenie nového používateľa použite príkaz „Vytvoriť používateľa“. Nahraďte `'public_user'` a`' your_password'` s požadovaným používateľským menom a heslom. Klauzula „Identifikovaná“ nastaví heslo používateľa. „%“ Znamená od ktoréhokoľvek hostiteľa.
`` sql
Create user 'public_user'@'%' identifikované 'your_password';
`` `
Dôležitá bezpečnostná poznámka: Použitie `'%'` umožňuje používateľovi pripojiť sa od * ľubovoľného * hostiteľa. To je často * nie * dobrý nápad z bezpečnostných dôvodov. Ak viete, že používateľ sa pripojí iba z konkrétnej adresy IP alebo hostiteľa, nahraďte `'%'` touto adresou (napr. `'Public_user'@'192.168.1.100'` alebo`' public_user '@' youdomain.com '). Napríklad:
`` sql
Create user 'public_user'@'192.168.1.100' identifikovaný 'your_password';
`` `
To by umožnilo užívateľovi pripojiť sa z adresy IP `192.168.1.100`.
3. Pripravy iba na čítanie:
Pomocou príkazu „Grant` poskytnete používateľovi prístup k konkrétnej databáze iba na čítanie. Nahraďte `your_database` názvom databázy, ku ktorej chcete poskytnúť prístup.
`` sql
Grant vyberte na your_database.* Na 'public_user'@'%';
`` `
* `Select`:umožňuje používateľovi čítať údaje z tabuliek v databáze.
* `your_database.*`:Určuje, že privilégium sa vzťahuje na všetky tabuľky v rámci `your_database`.
* `Do 'public_user'@'%'`:Určuje používateľa a hostiteľa, pre ktoré je privilégium udelené.
4. Preplachové privilégiá:
Po udelení privilégií musíte prepláchnuť privilégiové tabuľky, aby sa zmeny prejavili.
`` sql
Preplachové privilégiá;
`` `
5. Exit mysql:
`` sql
VÝCHOD;
`` `
Kompletný príklad:
`` `Bash
mysql -u root -p # connect as root
Create User 'public_user'@'%' identifikovaný 'mySecurepassword123!';
Grant vyberte na your_database.* Na 'public_user'@'%';
Preplachové privilégiá;
VÝCHOD;
`` `
Vysvetlenie a dôležité úvahy:
* `create user`: Vytvorí nový užívateľský účet MySQL.
* `grant`: Užívateľovi priraďuje konkrétne povolenia (privilégiá).
* `Flush Privileges`: Obnoví tabuľky grantov. Toto je * nevyhnutné * po vykonaní zmien v privilégiách používateľov; V opačnom prípade sa zmeny nemusia okamžite nadobudnúť.
* `Identifikované od: Nastavuje heslo používateľa. Vyberte silné heslo!
* Zabezpečenie osvedčených postupov:
* Obmedzte prístup hostiteľa: Ako už bolo uvedené, ak je to možné, vyhnite sa použitiu „%“ "pre hostiteľa. Obmedzte používateľa na pripojenie iba na známe a dôveryhodné adresy IP.
* Princíp najmenších privilégií: Udeľte iba minimálne privilégiá, ktoré používateľ potrebuje. V takom prípade je „výber“ dostatočný na prístup iba na čítanie. Vyhnite sa udeľovaniu „VŠETKÝMI PRIDELIGE“, pokiaľ to nie je absolútne nevyhnutné.
* Zložitosť hesla: Presadzovať silné zásady hesla. Použite zmes horných a malých písmen, čísel a symbolov. Zvážte použitie doplnku o overenie hesla MySQL na silnejšie presadzovanie hesla.
* ssl/tls: Pre výrobné prostredia vždy šifrujte pripojenia medzi klientom a serverom MySQL pomocou SSL/TLS na ochranu hesla a údajov prenášaných v sieti.
* Alternatívne privilégiá: Namiesto udelenia `select` v celej databáze (` your_database.*`) Môžete udeliť` select` iba v konkrétnych tabuľkách:
`` sql
Grant vyberte na your_database.table1 na 'public_user'@'%';
Grant vyberte na your_database.table2 na 'public_user'@'%';
`` `
Je to ešte bezpečnejšie, pretože obmedzuje prístup iba k potrebným tabuľkám.
* audit: Zvážte povolenie protokolovania auditu MySQL, aby ste sledovali, kto má prístup k databáze a aké dotazy sú spustené.
Pripojenie s novým používateľom:
Pripojenie pomocou nového používateľa:
`` `Bash
mysql -u public_user -p -h you_mysql_host -d your_database
`` `
* `-u public_user`:Určuje používateľské meno.
* `-p`:Výzvy na heslo.
* `-h your_mysql_host`:Určuje názov hostiteľa alebo IP adresu vášho servera MySQL. Ak sa pripojíte z toho istého počítača, môžete to často vynechať alebo použiť `localhost` alebo` 127.0.0.1`.
* `-D your_database`:Určuje databázu na pripojenie.
Po spustení tohto príkazu sa zobrazí výzva na zadanie hesla `public_user '.
Postupom týchto krokov a zvážením bezpečnostných odporúčaní môžete zabezpečeným spôsobom vytvoriť verejného používateľa s prístupom iba na čítanie k vašej databáze MySQL. Pri poskytovaní prístupu k vašim údajom vždy uprednostňujte bezpečnosť.