Mysql prawa dost
Mysql prawa dostępu
Witam serdecznie, temat pewnie łatwy ale jakoś nie mogę znaleźć odpowiedzi a czas mnie trochę nagli.
Zarządzam bazą mysql przez phpmyadmin, tam dodaje użytkowników ale czy da się ustawić tak aby użytkownik mógł sobie stworzyć bazy i usuwać ale żeby automatycznie miał uprawnienie do wykonywania wszystkich niezbędnych operacji (insert, update, delete, create table, deelte table ) ale tylko na swoich bazach? Można nadać prawa globalne ale wtedy dotyczą one wszystkich baz. Jak to rozwiązać?
Zarządzam bazą mysql przez phpmyadmin, tam dodaje użytkowników ale czy da się ustawić tak aby użytkownik mógł sobie stworzyć bazy i usuwać ale żeby automatycznie miał uprawnienie do wykonywania wszystkich niezbędnych operacji (insert, update, delete, create table, deelte table ) ale tylko na swoich bazach? Można nadać prawa globalne ale wtedy dotyczą one wszystkich baz. Jak to rozwiązać?
-
- Posty: 88
- Rejestracja: 06 lutego 2008, 15:17
-
- Posty: 88
- Rejestracja: 06 lutego 2008, 15:17
Re: Mysql prawa dostępu
Hmm, szczerze mówiać teraz do końca nie wiem o co chodzitomii pisze:ale żeby automatycznie miał uprawnienie do wykonywania wszystkich niezbędnych operacji (insert, update, delete, create table, deelte table ) ale tylko na swoich bazach? Można nadać prawa globalne ale wtedy dotyczą one wszystkich baz. Jak to rozwiązać?
tomii pisze:Ale z tego co się orientuje to grant przyznaje uprawnienia globalne lub na konkretną bazę/tabelę.
Za pomocą Grant możesz dodać uprawnienia dla danego użytkownika dla danej tabeli. Jeżeli możesz rozwiń temat bo wydawało mi się że w pierwszym poście o to chodziło, co zresztą napisałeś w drugim

Chcę umożliwić użytkownikowi aby mógł sam sobie tworzyć nowe bazy i żeby w tych swoich bazach i tylko w swoich miał prawa do dodawanie danych, usuwania i aktualizacji. Za pomocą grant mogę przyznać prawa do konkretnej bazy więc to by wyglądało tak że użytkownik sobie tworzy bazę, a ja mu muszę ręcznie nadać prawa (tak nie chce). Mogę też nadać prawa globalne ale wtedy użytkownik będzie miał prawa do wszystkich baz (tak też nie chcę). Chcę aby mógł sobie sam stworzyć bazę i żeby automatycznie do niej otrzymał prawa ale żeby nie miał uprawnień do baz innych użytkowników.
-
- Posty: 88
- Rejestracja: 06 lutego 2008, 15:17
tomii pisze:Chcę umożliwić użytkownikowi aby mógł sam sobie tworzyć nowe bazy i żeby w tych swoich bazach i tylko w swoich miał prawa do dodawanie danych, usuwania i aktualizacji. Za pomocą grant mogę przyznać prawa do konkretnej bazy więc to by wyglądało tak że użytkownik sobie tworzy bazę, a ja mu muszę ręcznie nadać prawa (tak nie chce). Mogę też nadać prawa globalne ale wtedy użytkownik będzie miał prawa do wszystkich baz (tak też nie chcę). Chcę aby mógł sobie sam stworzyć bazę i żeby automatycznie do niej otrzymał prawa ale żeby nie miał uprawnień do baz innych użytkowników.
- Użytkownik tworzy bazę.
- Nadanie praw użytkownika do wcześniej stworzonej przez niego bazy.
Czyli dodajesz użytkownika, uruchamia się ,,trigger'', który przypisuje mu odpowiednie prawa.
po zalogowaniu do bazy
Kod: Zaznacz cały
mysql>grant all on baza_danych.* to user@localhost identified by 'hasło';
flush privileges;
ale wtedy nie ma już kontroli nad konkretnymi ustawieniami użytkownika do bazy. Nie wszyscy potrzebują wszystkich uprawnień, a należy im dawać te które są im do pracy potrzebne.tomii pisze:Ale to pozwala nadać uprawnienia do konkretnej bazy i za każdym razem musiałbym nadawać prawa dla każdej bazy którą sobie ktoś utworzy a moje polecenia nada z automatu uprawnienia.