MySQL privilegije, spremanje datoteka
Pozdrav svima, imam dva lagana pitanja
1. Kod postavljanja privilegija za nove (ne-admin) korisnike, da li se dodjeljivanje privilegija izvodi pomoću zajedničkog statusa koji se po defaultu dodjeljuje svakom novom korisniku, npr. $status='korisnik' a koji u MySql-u odgovara određenom korisniku 'user' (prethodno kreiran naredbom "GRANT SELECT, INSERT, UPDATE, DELETE ON baza.tablica TO user@"%" IDENTIFIED BY 'neki-password'; ) ili se za svakog novog korisnika kreira novi korisnički ulaz tako da za recimo 1000 korisnika (profila) ima 1000 različitih korisnika MySQL-a. Ili postoji neki treći način kako se obavlja razlika u privilegijama između administratora i korisnika 2. Drugo pitanje je vezano za upload datoteka a strukturalno je slično prvom pitanju. Da li se za svakog korisnika kreira poseban direktorij (userID_dir) u koji se smještaju samo njegovi dokumenti ili se kreira jedan zajednički direktorij u kojem se nalaze datoteke svih korisnika. Ne znam koliko sam uspio jasno definirati pitanja, ako treba mogu još pojasniti. Nadam se nekom odgovoru, pozdrav |
Ajd pojasni malkice, jel mislis na podesavanje mysql i FTP servera, ili na to kako da organizujes usere i fajlove u nekoj svojoj aplikaciji?
|
Mislim na osnovno podešavanja mysql-a, kako da administratori imaju različite mysql privilegije u odnosu na regularne korisnike.
Kako u praksi ostvariti razlikovanje različitih ovlasti. Da li se u MySQL-u navede par grupnih tipova korisnika recimo administrator-moderator-korisnik svaki sa specifičnim privilegijama koje se pozivaju logiranjem na stranicu? Početni username i password za mysql je 'localhost' i " ". Da li je praksa da se za administratora napravi jedan mysql račun 'admin' 'xyz', za moderatora drugi račun 'moderator' 'abc' i za regularne korisnike treći ulaz u mysql 'korisnik' '123' tako da se svi korisnici logiraju pod 'korisnik', svi administratori pod 'admin' i td. Ili se za svaki profil na stranici definira pojedinačni ulaz u mysql čime bi se dobilo 1000 mysql korisnika za 1000 profila na stranici. A pod 2, situacija kada svaki korisnički račun može deponirati vlastite datoteke (npr. slike). Iste se spremaju u neki direktorij a ne u bazu podataka. Pitanje, da li se kreira jedan direktorij u koji se smještaju sve datoteke svih korisnika, ili se za svakog korisnika kreira poseban folder samo za njegove datoteke. |
Za prvu stavku ja i dalje ne razumem šta želiš da pitaš.
Što se tiče druge stavke slike postavaljaš u neke strukturisane foldere tipa upload/userid1/njegove slike i upload/userid2/njegove slike.... itd. Umesto userid možeš recimo raditi md5 fajla i uzimati poslednje slovo, pa zatim na osnovu tog slova praviti strukturu.Ukoliko misliš da ćeš imati mnogo slika možeš kreirati novi folder unutar ovog foldera po istom principu samo što ćeš sad uzeti n-1 slovo ...itd |
Bez da previše opisujem kao do sad, jednostavno, kako napraviti razliku između administratora i običnih korisnika (i da li se ona zasniva na mysql privilegijama)?
Sljedeće pitanje koje se javlja je kako da jedan korisnik može samo gledati tuđi profil a da ga mijenjati može samo njegov vlasnik. Da li se to ostvaruje preko php validacije (cookie, session) ili mysql 'programiranja' Hvala na odgovoru razno. |
obe stvari koje si pitao se resavaju programerski (ne preko mysql privilegija). svi useri se cuvaju u jednoj tabeli, u kojoj imas polje userRole (guest/member/admin/whatever). pre otvaranja stranice proveris da li korisnik (na osnovu uloge koju iscitas) ima pravo da pristupi/edituje neki sadrzaj
|
Hvala na pomoći, to me je zanimalo. Samo onda još potpitanje pa da ne tupim više, može i odgovor da/ne. Da li to znači i da se i uloge definiraju programerski a ne upotrebom mysql privilegija
|
jap. kada se user registruje stavis mu defalut rolu user ili nesto vec
|
Citat:
Citat:
|
Je, to je to, zanimala me autentikacija korisnika a sad je mi je puno jasnije, hvala svima
|
Vreme je GMT +2. Trenutno vreme je 14:34. |
Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.