abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 21:22 | Zajímavý software

    TerminalTextEffects (TTE) je engine pro vizuální efekty v terminálu. Zdrojové kódy jsou k dispozici na GitHubu pod licencí MIT.

    Ladislav Hagara | Komentářů: 2
    včera 17:11 | Pozvánky

    Od čtvrtka 30. 5. do soboty 1. 6. lze v Praze navštívit Veletrh vědy, tj. největší populárně naučnou akci v České republice, kterou každoročně od roku 2015 pořádá Akademie věd ČR. Vstup zdarma.

    Ladislav Hagara | Komentářů: 4
    včera 14:11 | Komunita

    Canonical představil Ubuntu optimalizované pro jednodeskový počítač s RISC-V procesorem Milk-V Mars.

    Ladislav Hagara | Komentářů: 0
    27.5. 21:22 | Nová verze

    Armbian, tj. linuxová distribuce založená na Debianu a Ubuntu optimalizovaná pro jednodeskové počítače na platformě ARM a RISC-V, ke stažení ale také pro Intel a AMD, byl vydán ve verzi 24.5.1 Havier. Přehled novinek v Changelogu.

    Ladislav Hagara | Komentářů: 0
    27.5. 19:44 | IT novinky

    Společnost xAI založena Elonem Muskem a stojící za AI LLM modelem Grok získala investici 6 miliard dolarů.

    Ladislav Hagara | Komentářů: 1
    27.5. 15:44 | IT novinky

    Finálový zápas mistrovství světa v ledním hokeji přinesl nový rekord NIX.CZ (𝕏): "Dosavadní absolutní maximum našeho propojovacího uzlu bylo překonáno v čase 21:10, kdy jsme při přenosu dat dosáhli 3,14 Tbps. Je třeba také doplnit, že po deváté hodině večerní byly na maximu i ostatní datové přenosy nesouvisející s hokejovým šampionátem".

    Ladislav Hagara | Komentářů: 3
    27.5. 15:11 | Pozvánky

    Přihlaste svou přednášku na další ročník konference LinuxDays, který proběhne 12. a 13. října na FIT ČVUT v pražských Dejvicích. CfP poběží do konce prázdnin, pak proběhne veřejné hlasování a výběr přednášek.

    Petr Krčmář | Komentářů: 0
    25.5. 19:00 | Zajímavý projekt

    Na crowdsourcingové platformě Crowd Supply byla spuštěna kampaň na podporu open source biometrického monitoru ve tvaru hodinek HealthyPi Move. Cena je 249 dolarů a plánovaný termín dodání listopad letošního roku.

    Ladislav Hagara | Komentářů: 13
    24.5. 22:22 | Upozornění Ladislav Hagara | Komentářů: 21
    24.5. 17:44 | Nová verze

    Firma Murena představila /e/OS verze 2.0. Jde o  alternativní sestavení Androidu bez aplikací Google. Mezi novinkami je podrobnější nastavení ochrany soukromí před sledováním aplikacemi. Murena prodává několik smartphonů s předinstalovaným /e/OS (Fairphone, repasovaný Google Pixel 5).

    Fluttershy, yay! | Komentářů: 0
    Podle hypotézy Mrtvý Internet mj. tvoří většinu online interakcí boti.
     (89%)
     (3%)
     (4%)
     (4%)
    Celkem 956 hlasů
     Komentářů: 16, poslední 14.5. 11:05
    Rozcestník

    Accesscontrol

    10.4.2013 19:49 | Přečteno: 1115× | Za vším hledej Linux | poslední úprava: 26.8.2014 10:52

    Cílem tohoto blogpostu je seznámit zdejší obecenstvo s rozšířením Mediawiki, které jsem svého času vytvořil a které momentálně nemám čas zaktualizovat pro její novější vývojové verze.

    Klasická mediawiki má systém práv založený na skupinách. Pokud instalujete novější verze mediawiki, tak se vás instalační skript při konfiguraci zeptá, jestli chcete wiki:

    Jemnější nastavení práv tento systém neumožňuje. Rozšíření Accesscontrol však přidává navíc možnost vytvářet uzavřené uživatelské skupiny a to tak, že k tomu není zapotřebí obtěžovat správce. Pro větší názornost jsem vytvořil schematický obrázek

    Uživatelské skupiny, se kterými pracuje Mediawiki, jsou v horizontální rovině. Uživatel Franta, který je přiřazen do skupiny "byrokrat" má stejná práva jako uživatel Tonda. Ale co když chce uživatel Franta vytvořit stránku k projektu na kterém spolupracuje s uživatelem Luboš, ale nikdo jiný by k se k těm datům dostat neměl? To je situace, kde se může s výhodou uplatnit rozšíření Accesscontrol, které umožňuje vytvářet uzavřené skupiny napříč uživatelských skupin Mediawiki.

    Možná si i někdo z vás vzpomene, že jsem se tady o něm již jednou zmiňoval, v rámci blogpostu Zabezpečení mediawiki

    Nejprve Franta nebo Luboš vytvoří stránku s názvem Sk:A, která bude fungovat jako seznam uživatelů co mají být členy této skupiny. A na ni napíše seznam uživatelských jmen osob, které mají mít ke stránkám projektu přístup. Do wiki kódu všech stránek, které mají být součátí projektu pak stačí přidat tag accesscontrol s názvem této stránky.

    Rozšíření funguje tak, že ještě předtím než vrátí obsah stránky provede kontrolu kódu a pokud narazí na tento tag, zkontroluje v něm uvedené seznamy. Pokud na některém z nich najde username uživatele co na stránku leze, pokračuje se v jejím zpracování. V opačném případě ho vykáže do příslušných mezí.

    Pochopitelně je žádoucí takto zabezpečit i samotný seznam uživatelů této skupiny. Při pokusu o přístup na takto zajištěnou stránku i uživatel Tonda ostrouhá. Jedinou výjimkou je uživatel Jenda, který je správcem wiki. I když i správce může mít omezen přístup do skupiny, není to moc praktické - obzvláště v případě, kdy se Luboš nebo Franta blbě uklepne a vloží do tagu chybné jméno uživatelského seznamu. Jenda má stále možnost chybu opravit.

    Existují i jiná řešení problému. Accesscontrol má však tu výhodu, že si uživatelé mohou vytvářet své uzavřené skupiny po libosti, aniž by tím museli otravovat Jendu. Jako např. Marek, který si udělal svou skupinu Sk:B, do které nemůže z celé té partičky kromě Jendy nikdo.

    Tak. A teď k věci. Tohle rozšíření jsem napsal já a momentálně funguje se všemi stabilními verzemi. Jenže od verze 1.21 se u MediaWiki změnil způsob, jakým se pracuje při generování stránky s textem a tak toto rozšíření ve vývojových verzích nefunguje - je-li aplikován současný kód, tak se nevrátí nic. Žádná tragédie, podobný problém byl i při přechodu na verzi 1.18, jenže já už dlouho s PHP nedělal a hrabu se teď v jiných věcech. Nejspíš bych se k tomu dostal až někdy v létě, ale pokud by chtěl někdo na tom zapracovat již teď, budu rád.

    Update:

    Rozšíření pro verzi 1.21 bylo nakonec aktualizováno díky neznámému přispěvateli na verzi 2.2 3.října 2013. a vývoji postupem času přispěli také další lidé, čímž jim touto cestou děkuji.

    Aktuální verze 2.5, vydaná včera (tj. 25.srpna 2014), konečně nabízí řešení vleklé bolesti tohoto rozšíření, která souvisí s vyhledáváním. Pokud se hledaný výraz nachází na chráněné stránce, končilo vyhledávání přesměrováním. Teď lze toto přesměrovávání vypnout a jako bonus - obsah cílové stránky nahradit vlastním sdělením.

    Je to k neuvěření. Šest let..

           

    Hodnocení: 100 %

            špatnédobré        

    Obrázky

    Accesscontrol, obrázek 1

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    Komentáře

    Vložit další komentář

    Jakub Lucký avatar 10.4.2013 20:02 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Accesscontrol
    Přihřeju si polívčičku: Rekurzivní Accesscontrol založený za IAC...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    10.4.2013 20:15 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Accesscontrol
    Jen tak na okraj - IAC se odpíchnul od původní verze rozšíření Group Based Access Control, což sebou ovšem neslo i stejné nedostatky. Ty byly tehdy tak velké, že jsem to raději napsal komplet znova. Accesscontrol je součástí git repozitáře oficiálních rozšíření - byl to boj je dostrkat od svn ke gitu.. Chci tím říct, že považuji za plýtvání energií dělat totéž na více frontách. Můj pracovní git je zde, a není problém přidat přístup.
    Jakub Lucký avatar 10.4.2013 20:22 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Accesscontrol
    Nám to plně funguje, plní to naše přesně ty požadavky, které na to máme a zatím se to nikomu (poslední verzi) nepodařilo obejít...

    A tak nemáme vůbec žádný důvod měnit. Navíc díky rekurzivitě už nemusíme uživatele zaučovat v používání, jen ve správném pojmenování článků...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    10.4.2013 22:29 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Accesscontrol
    To že vám to funguje je snad samozřejmé. Rovnou napíšu proč to nemohu otestovat u nás - jednou z věcí, které jsem vypustil jsou ty dvě čárky. Kdybych použil svou extension nad vašimi daty, tak to bude normálně fungovat jak má. Obráceně to nepůjde. Testovali jste si i přístup přes redirekty a vložené stránky? Pokud jde o mne, tak vím co je třeba upravit. Akorát na to nemám momentálně čas. Se stable verzemi to funguje a a to zatím stačí. Přeji vám hodně štěstí, ale není li váš kód součástí oficiální repository, tak je to dobré akorát tak pro vás - chybí zpětná vazba.
    Jakub Lucký avatar 11.4.2013 08:26 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Accesscontrol
    Pokud je největší problém dvě čárky, pak se to spraví jednořádkovým patchem. Věci fungují jak fungují, protože RIAC je jen patchset k IAC a drop-in replacement.

    Redirecty byly bezpečné už v IAC, pro vkládání stránek do stránek mělo IAC jen možnost povolit (s riziky) nebo zakázat, RIAC to to řeší (vkládaná stránka musí mít stejná nebo volnější omezení než stránka, do které je vloženo)

    Kód není součástí oficiální repository proto, že nemůžu poskytovat worldwide support. Posílal jsem své patche Jeisenovi (autor IAC) a říkal, že bude IAC pravděpodobně upravovat, tak moje patche zařadí...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    11.4.2013 09:00 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Accesscontrol
    Posílal jsem své patche Jeisenovi (autor IAC) a říkal, že bude IAC pravděpodobně upravovat, tak moje patche zařadí...
    8-D Nerad bych někomu bral iluze, ale doporučoval bych se podívat do historie stránek k příslušným rozšířením přímo na Mediawiki.

    Původní rozšíření - 'Group Based Access Control' - se objevilo 16. října 2006. V době kdy jsem potřeboval problém se skupinami vyřešit, bylo ve verzi 0.8 a podporovalo Mediawiki v. 1.11, jenže já ho potřeboval použít s verzí 1.12 a tam nefungovalo.

    Nejdřív jsem ho chtěl pouze upravit, jenže jsem zjistil že jeho kód má zásadní chyby a autor řadu věcí nedomyslel. Takže jsem to nakonec napsal úplně znovu. Chtěl jsem ale z hlediska obsahu Mediawiki zachovat kompatibilitu, takže jsem zachoval (až na ty čárky) syntaxi tagu i stránek s uživatelským seznamem. Aby byla zachována kontinuita, tak jsem do gitu uložil i všechny předchozí verze, které jsem vytahal z SVN. To bylo v srpnu 2008.

    Nechápu pohnutky tvůrce IAC, nicméně v době kdy vytvořil svůj klon (rozvněž založený na 'Group Based Access Control') byl Accesscontrol funkční a použitelný. Každopádně mne nijak nekontaktoval, takže předpokládám že se ani moc nedíval, jestli náhodou někdo jiný něco podobného neudělal. Ale to není můj problém. Drobnou úpravu bylo třeba provést až pro verzi 1.16

    Od Mediawiki verze 1.18 byl odstraněn hook na kterém byl 'AccessControl' (i původní 'Group Based Access Control' ) navěšen, proto bylo třeba kód v podstatě přepsat. Proto také verze 2.0 Psal jsem to tehdy už pro 1.19beta, takže tato verze funguje i s aktuální stable verzí Mediawiki 1.20.3

    Jak už jsem zmínil v blogu, od verze 1.21 přilepili do Mediawiki framework, který mění chování při generování stránek. Vím které části kódu je třeba upravit, ale háček je v tom že se změnilo nejspíš ještě něco jiného. Takže další verze bude nejspíš 3.0

    Osobně mi přijde smysluplnější věnovat pozornost rozšíření, které pokrývá všechny verze Mediawiki od 1.11 nahoru a které je součástí oficiální repository, než vytvářet forky. Původní rozšíření už svou stránku na Mediawiki nemá řekl bych že IAC v dohledné době nejspíš také vyšumí.

    Ale proti gustu..
    Jakub Lucký avatar 11.4.2013 09:40 Jakub Lucký | skóre: 40 | Praha
    Rozbalit Rozbalit vše Re: Accesscontrol
    Jak to bylo historicky jsem neměl tušení (podle FTP jsme kdysi asi používali verze 0.7 a 0.8). Přišel jsem k hotové wiki, která běžela na IAC. Rekurzivní řešení podle našich potřeb (a mám pocit, že žádné) neexistovalo, tak jsem to jednoduše přepsal pro naše potřeby.

    A že jsem byl v dobré náladě, zveřejnil jsem zdrojáky a napsal autorovi, který zdrojáky uvítal. A třeba je uvítá i někdo jiný, až zjistí, jaký pain-in-the-ass je učit uživatele psát bezpečnostní tag do každé stránky. A pak ať si to klidně forkne a upraví podle svých potřeb...

    Pokud bych se rozhodoval, které z těch AC systémů vybrat na přepis, tak už je tady N blogů jako o CADu a výsledek nikde... Takhle už od února fungujeme...
    If you understand, things are just as they are; if you do not understand, things are just as they are.
    11.4.2013 10:06 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Accesscontrol
    Pošli link na tu vaši wiki, a já ti to otestuji ;-)
    Heron avatar 10.4.2013 21:20 Heron | skóre: 53 | blog: root_at_heron | Olomouc
    Rozbalit Rozbalit vše Re: Accesscontrol
    Proč má ten obrázek průhlednou barvu pozadí? Na tmavém stylu je špatně čitelný.
    10.4.2013 22:18 Aleš Kapica | skóre: 51 | blog: kenyho_stesky | Ostrava
    Rozbalit Rozbalit vše Re: Accesscontrol
    Splácal jsem ho narychlo v inkscape. Nenapadlo mě že by mohl být průhledný. ;-)

    Založit nové vláknoNahoru

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.