GUI pro dynamické Acl (Access Control List)
#1 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
GUI pro dynamické Acl (Access Control List)
Nazdárek,
napsal jsem grafické rozhraní pro správu přístupových práv.
- Využívá moduly (celé GUI je v jednom modulu).
- Instalace podporuje PostgreSQL nebo MySQL.
- Přes GUI lze spravovat vše potřebné pro třídu Permission – tj.: privilegia, zdroje, role, uživatele a pravidla přístupů.
- Podpora pro stromové struktury (role, zdroje).
- Obsahuje ukázkovou stránku.
- Popis ovládání ještě není hotový.
- Popis instalace je součástí archivu.
Ocenil bych jakoukoliv kritiku, nápady, připomínky, dotazy.
Download: GUI
for Acl
Aktuální verze: 1.0
Testováno na:
PHP: 5.2.5
Apache: 2.0.63
Nette Framework: 0.9.2 a 0.9.3
dibi: 1.2
S pozdravem
Bernard
Editoval Bernard Williams (30. 4. 2010 18:52)
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#2 před 2 lety
- pekelnik
- Nette guru

- Registrovaný: 14. 2. 2009
- Příspěvky: 372
Re: GUI pro dynamické Acl (Access Control List)
sfGuard pro Nette se začíná líhnout :)
_ _ _ _ _ _ _ _ _ __(_) |_| |____ _
/ _` | || | '_| || | | '_ \ | _| / / _` |
\__, |\_,_|_| \_,_| | .__/_|\__|_\_\__,_|
#3 před 2 lety
- Patrik Votoček
- Nette Evangelist

- Registrovaný: 8. 3. 2008
- Příspěvky: 2122
Re: GUI pro dynamické Acl (Access Control List)
jelikož se jedná o GUI možná by se hodil screenshot… :-)
Sorry my bad english.
Vrtak-CZ | Nella Project | Osobní Blog | Twitter | LinkedIn | GitHub
„Nastala chyba která neměla nastat“ aneb „Když se chce
všechno jde.“
#4 před 2 lety
- BigCharlie
- Člen
- Registrovaný: 13. 11. 2008
- Příspěvky: 195
Re: GUI pro dynamické Acl (Access Control List)
Tak se přimlouvám za screenshot, protože při snaze o vyzkoušení mě
zastavila hláška Resource 'ceska_sporitelna' does not exist..
A při letmém nahlédnutí do kódu demonstrační stránky se mi nechce
definovat tolik zdrojů :-(
Nebo funkční demo?
#5 před 2 lety
- Cifro
- Nette guru

- Registrovaný: 6. 2. 2007
- Příspěvky: 258
Re: GUI pro dynamické Acl (Access Control List)
V DB v tabuľke gui_users si treba zmeniť heslo pre admina,
pomocou md5(nove heslo), lebo nikde nie je zmienené aké je heslo…
A login je na /gui-for-acl-1.0/document_root/front/login/. Po
prihlasení to zase presmeruje na Front:Default:Default a vyhodí tú Excpetion
ale stačí zmeniť url napr. na
/gui-for-acl-1.0/document_root/acl/users/ a ste tam.
#6 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Hodil jsem na web nějaké náhledy – viz. první post.
Do archivu jsem zapomněl přidat dump databáze pro demo stránku – omlouvám se. Teď už to dump obsahuje (PostgreSQL/MySQL), proto stahujte – odkaz viz. první post.
Cifro napsal(a):
V DB v tabuľke
gui_userssi treba zmeniť heslo pre admina, pomocou md5(nove heslo), lebo nikde nie je zmienené aké je heslo…
Hesla jsou stejné jako jméno – tj. pro uživatele Admin je nastavené heslo Admin. Tohle je napsané na demonstrační stránce, ale protože jste neměli DB data, tak to házelo chybu o neexistujících zdrojích atd.
Cifro napsal(a):
A login je na
/gui-for-acl-1.0/document_root/front/login/. Po prihlasení to zase presmeruje na Front:Default:Default a vyhodí tú Excpetion ale stačí zmeniť url napr. na/gui-for-acl-1.0/document_root/acl/users/a ste tam.
Divné.. Tohle se mi nestalo a to jsem to teď zkoušel nově instalovat. Zkus si to znovu stáhnout a importovat demo DB.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#7 před 2 lety
- Cifro
- Nette guru

- Registrovaný: 6. 2. 2007
- Příspěvky: 258
Re: GUI pro dynamické Acl (Access Control List)
Už je to OK :)
Len… v config.ini je zlá voľba database.dbname a má byť
database.database, a nezabudnite si zmeniť driver v configu,
importol som mysql a papuľovalo že nemam pgdriver :D
Zabudol som poďakovať za toto GUI for ACL, určite pomôže, vďaka :)
Editoval Cifro (20. 4. 2010 13:17)
#8 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Cifro napsal(a):
Len… v config.ini je zlá voľbadatabase.dbnamea má byťdatabase.database, a nezabudnite si zmeniť driver v configu, importol som mysql a papuľovalo že nemam pgdriver :DZabudol som poďakovať za toto GUI for ACL, určite pomôže, vďaka :)
No ono to ani tak není „zlá voľba“. V PostgreSQL funguje dbname a v MySQL zase database. Nevím jak je to v nových verzích dibi, ale v té mé to musím rozlišovat.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#9 před 2 lety
- Jakub Šulák
- Nette guru

- Registrovaný: 26. 8. 2008
- Příspěvky: 253
Re: GUI pro dynamické Acl (Access Control List)
Možná trochu „povrchní“ připomínka, ale…
Začínají se tvořit komponenty s „tváří“. To je super, ale trochu
mě mrzí jedna věc – ke každé použité komponentě je nutné
nakopírovat X obrázků/ikon, Y javascriptů, apod.
Samozřejmě, mohu si komponentu přepsat (template), na své ikony, apod. –
ale to je práce navíc.
Osobně bych možná otevřel debatu nad tím, zda nepoužívat nějaké UI pro komponenty. Nový „Falešný datagrid“ již začal – používa Jquery UI.
Výhodu spatřuji v:
- není nutné pro každou komponentu kopírovat „její ikony“
- komponenty jsou si podobné
- jednoduše mohu změnit styl celé aplikace (všech komponent), změnou tématu, nebo napsáním vlastního
#10 před 2 lety
- Etch
- Člen

- Registrovaný: 24. 9. 2008
- Příspěvky: 194
Re: GUI pro dynamické Acl (Access Control List)
Bylo by potřeba aby si tam dořešil mazání uzlů a úklid v db.
- Pokud smažeš třeba resource tak by se měla uklidit tabulka „gui_acl“, aby tam nezůstávaly nesmyslné (nepotřebné) řádky.
- Mazání uzlů je dost dobře nepoužitelné, protože se nesmažou potomci. Bylo by tedy potřeba dodělat smazání všech potomků při mazání uzlů ať již rekurzí či jiným mechanismem.
EDIT: Dále by bylo možná dobré používat modely.
Editoval Etch (22. 4. 2010 12:28)
#11 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Etch napsal(a):
Bylo by potřeba aby si tam dořešil mazání uzlů a úklid v db.
- Pokud smažeš třeba resource tak by se měla uklidit tabulka „gui_acl“, aby tam nezůstávaly nesmyslné (nepotřebné) řádky.
- Mazání uzlů je dost dobře nepoužitelné, protože se nesmažou potomci. Bylo by tedy potřeba dodělat smazání všech potomků při mazání uzlů ať již rekurzí či jiným mechanizmem.
V PostgreSQL mi tohle hlídají cizí klíče, takže tohle dořešené mám. Ty nejspíš používáš MySQL, když ti to nejde. Je pravda, že tam jsem ty cizí klíče neexportoval, protože si nejsem úplně jistý o jejich funčnosti (jestli to funguje stejně jako v PostgreSQL).
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#12 před 2 lety
- Etch
- Člen

- Registrovaný: 24. 9. 2008
- Příspěvky: 194
Re: GUI pro dynamické Acl (Access Control List)
Předpokládal sem, že to v PgSQL budeš mít udělané přes cizí klíče. Ale pokud to tak je tak nechápu proč si pro mysql nepoužil InnoDB, ale MyISAM. Proto sem také psal „vyřešit jiným mechanismem“.
EDIT: Typo
Editoval Etch (22. 4. 2010 12:28)
#13 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Já primárně dělám v PostgreSQL. Do MySQL jsem to exportoval jen kvůli komunitě.
Teď jsem na to koukal do dokumentace a cizí klíče fungují opravdu jen v InnoDB, což je možná důvod, proč mi doma nefungovaly. Hned jak bude chvilka, tak to převedu na InnoDB a cizí klíče dodám.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#14 před 2 lety
- Honza Kuchař
- Moderator

- Registrovaný: 12. 8. 2007
- Příspěvky: 1588
Re: GUI pro dynamické Acl (Access Control List)
Vypadá to hodně dobře. Nechceš to přidat do extras? Ať je to na jednom místě.
#15 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Etch napsal(a):
Předpokládal sem, že to v PgSQL budeš mít udělané přes cizí klíče. Ale pokud to tak je tak nechápu proč si pro mysql nepoužil InnoDB, ale MyISAM. Proto sem také psal „vyřešit jiným mechanismem“.
Tak jsem to převedl do InnoDB a vložil cizí klíče. Změny jsou už v archivu, takže si to můžeš stáhnout.
honzakuchar napsal(a):
Vypadá to hodně dobře. Nechceš to přidat do extras? Ať je to na jednom místě.
Ještě bych rád počkal na nějaké další odezvy a pak to tam hodím.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#16 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
Mám asi hloupou otázku, ale potřeboval bych poradit, jak mohu přidat nějaký projekt do Google Code. Nikde tam nevidím žádný odkaz.. Nebo je to jen pro „vyvolené“? Rád bych tam umístil tento doplněk. Díky
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#17 před 2 lety
- wopice
- Člen

- Registrovaný: 23. 10. 2009
- Příspěvky: 16
Re: GUI pro dynamické Acl (Access Control List)
Bernard Williams napsal(a):
Mám asi hloupou otázku, ale potřeboval bych poradit, jak mohu přidat nějaký projekt do Google Code. Nikde tam nevidím žádný odkaz.. Nebo je to jen pro „vyvolené“? Rád bych tam umístil tento doplněk. Díky
#18 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
wopice napsal(a):
Díky, to jsem přesně hledal.
honzakuchar napsal(a):
Vypadá to hodně dobře. Nechceš to přidat do extras? Ať je to na jednom místě.
Je to tam. Je to má první stránka tady na wiki, takže kdyby ji chtěl kdokoliv upravit, doplnit, tak jen směle do toho :-)
Editoval Bernard Williams (30. 4. 2010 18:56)
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#19 před 2 lety
- Honza Kuchař
- Moderator

- Registrovaný: 12. 8. 2007
- Příspěvky: 1588
Re: GUI pro dynamické Acl (Access Control List)
Ještě bych tam doplnil, pro kterou veri PHP to je.
#20 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
honzakuchar napsal(a):
Ještě bych tam doplnil, pro kterou veri PHP to je.
Ta by měla být dána verzí Nette. Samotná aplikace nevyužívá nic speciálního z PHP.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#21 před 2 lety
- hrach
- Nette guru

- Registrovaný: 11. 3. 2007
- Příspěvky: 519
Re: GUI pro dynamické Acl (Access Control List)
bylo (asi) myšleno jestli PHP 5.2 nebo 5.3…(namespace)
Editoval hrach (2. 5. 2010 21:05)
#22 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
hrach napsal(a):
bylo (asi) myšleno jestli PHP 5.2 nebo 5.3…(namespace)
To mě napadlo, a proto jsem taky uvedl, že samotná aplikace nevyužívá nic speciálního (jako např. namespace).. Ale abych to nějak uzavřel, tak aplikaci jsem psal pod PHP 5.2. Na PHP 5.3 jsem to netestoval.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#23 před 2 lety
- ic
- Nette guru

- Registrovaný: 28. 3. 2009
- Příspěvky: 306
Re: GUI pro dynamické Acl (Access Control List)
v souboru app/AclModule/presenters/PermissionPresenter.php je na řádku 198 zatoulaný napevno zadaný název tabulky
$rows = dibi::fetchAll('SELECT id, name FROM [gui_acl_privileges] ORDER BY name;');
jiného místa kde se názvy tabulek nedosazují jsem si nevšiml.
#24 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
@ic: Díky. Hned jak bude čas, tak to opravím v nové verzi.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#25 před 2 lety
- sin
- Člen

- Registrovaný: 29. 7. 2009
- Příspěvky: 85
Re: GUI pro dynamické Acl (Access Control List)
Pro demo na mysql je potřeba přidat následující řádek, jinak to pise „No database selected“
database.database = gui-for-acl
#26 před 2 lety
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
@sin: Tohle je popsáno v souboru install.cs.txt uvnitř archivu. PostgreSQL
používá dbname, ale MySQL database.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#27 před rokem
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
lopikol: Můžeš to použít jako již kompletní administraci pro ACL. Rozšíření je nutné pouze v případě speciálních požadavků.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#28 před rokem
- roarbb
- Člen

- Registrovaný: 16. 1. 2011
- Příspěvky: 20
Re: GUI pro dynamické Acl (Access Control List)
Funguje to super, dakujem :) Mam len jeden maly problem. Potreboval by som aplikaciu spustat z rootu, teda premiestnit index.php z „/document_root“ do „/“. Prepisal som v indexe cestu k WWW_DIR. Teraz vsak nefunguje http:/ /localhost/moja_aplikacia/front/login/. Hlasi 404 :/
Dakujem za kazdu radu zaciatocnikovi.
Editoval roarbb (12. 4. 2011 21:08)
#29 před rokem
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
roarbb: Konstantu WWW_DIR nech beze změny – ta se určí sama podle umístění souboru index.php. Z konstant APP_DIR a LIBS_DIR* odstraň „../“ a mělo by to vše jít. Pro jistotu si ještě smaž obsah složky temp.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#30 před 9 měsíci
- thool
- Nový člen

- Registrovaný: 5. 8. 2011
- Příspěvky: 7
Re: GUI pro dynamické Acl (Access Control List)
Po debugovacím maratonu se mi podařilo tento plugin rozjet na nette 2.0-beta :-)
Jde nějak nastavit pravidlo:
nejaka_role – nejaky_resource – ALL
Abych to nemusel otrocky vypisovat?
#31 před 9 měsíci
- Bernard Williams
- Nette guru

- Registrovaný: 9. 7. 2009
- Příspěvky: 210
Re: GUI pro dynamické Acl (Access Control List)
V sekci Permission bys měl mít v MultiSelectu možnost „- All resources -“ a „- All privileges -“.
Lidé nechtějí od života žádat mnoho, protože se bojí prohry. Kdo
však touží svádět dobrý boj, musí pohlížet na svět jako na nesmírný
poklad, který tu čeká, aby byl dobyt.
– Paulo Coelho –
#32 před 9 měsíci
- thool
- Nový člen

- Registrovaný: 5. 8. 2011
- Příspěvky: 7
Re: GUI pro dynamické Acl (Access Control List)
:) No tak potom není co řešit.
mimochodem soubor PermissionPresenter.php line 83 – tabulka TABLE_PRIVILEGES je tam hardcoded, hodilo by se spíš
$rows = dibi::fetchAll('SELECT id, name FROM ['.TABLE_PRIVILEGES.']
ORDER BY name;');
Jinak dobrá práce tohle ACL GUI, díky.
Editoval thool (18. 8. 2011 21:40)