Manipulace se soubory na souborovém systému s přístupovými právy
Článek by se dal zjednodušeně popsat jako rozdíl mezi kopírováním a přesunutím souboru. Uživatelé jsou mnohdy překvapeni, co se to vlastně děje, budu se snažit nenásilnou formou vysvětlit chování systému.
K popisované situaci dochází často na sdílených discích na serveru, ať už je to NTFS nebo Samba, kde jsou složky s nastavenými přístupy pro různé skupiny uživatelů a přístupy se často různě prolínají.
Souborových systémů s možností nastavování práv je mnoho. Zastoupeny jsou snad ve všech modernějších desktopových operačních systémech a už hodně dlouhou dobu jsou nedílnou součástí serverových systémů.
Pro zjednodušení si budeme příklad vysvětlovat na souborovém systému NTFS (svět Windows).
Systém přístupových práv v souborovém systému je založen na objektech – v našem případě to budou soubory a složky. Složka je kontejner pro další objekty. Může obsahovat další složky nebo soubory. V základním nastavení, se kterým se setkáte nejčastěji, budou objekty nastaveny tak, že se práva budou dědit z nadřízených objektů na podřízené. Znamená to, že když změníte nějaký přístup na složce, projeví se to i u všech objektů uvnitř. Toto chování můžete ovlivnit, můžete dědění zrušit, můžete nastavovat práva pro jednotlivé objekty, ale ve většině případů k tomu není důvod.
Vraťme se k našemu příkladu. Máme sdílený disk, na kterém budou složky „modrá“ a „oranžová“. Do modré složky budou moci pouze „modří“ uživatelé, do oranžové složky zase oranžoví. A máme jednoho „dvoubarevného“ uživatele Frantu, který může do obou složek.
Co se stane, pokud vezmu soubor třeba z flashdisku nebo vytvořím nový soubor v textovém editoru a uložím jej do některé modré složky? Do té chvíle „bezbarvý“ soubor se po vložení do složky „obarví“ příslušnou barvou – převezme nastavení práv nadřízeného objektu (složky). Takže v tuto chvíli máme obarvený „modrý“ soubor v modré složce.
Případ 1 – Franta soubor přesune
Oranžový uživatel požádá Frantu, aby soubor z modré složky dal do oranžové složky. Franta, protože je líný soubor přesune (obdoba vyjmout - vložit). Jak vypadá teď náš soubor? Přesunutím se se souborem nic nestane z pohledu přísupových práv. Soubor už jednou barvu dostal (modrou), takže v oranžové složce skončí po přesunutí modrý soubor. A nastává situace, kdy se modří uživatelé k souboru nedostanou, protože do oranžové složky nemohou a oranžoví uživatelé sice mohou do své složky, ale modrý soubor neotevřou – nemají na to práva. Při pokusu o otevření souboru dostanou hlášení: „Přístup k souboru byl odepřen“.
Systém totiž v případě, kdy objekt už má nějaká práva přiřazena a ten objekt pouze přesouváme, tato práva zachová.
Teď musí přijít opět Franta, který to všechno spískal a soubor přesunout zpět do modré složky a udělat to podle následujícího scénáře.
Případ 2 – Franta soubor zkopíruje
Oranžový uživatel požádá (opět) Frantu, aby jim soubor z modré složky dal do oranžové, ale tentokrát tak, aby jej oranžoví uživatelé mohli otevřít. Franta, tentokrát již správně provede zkopírování souboru (obdoba kopírovat - vložit). Kopírováním se vytvoří nový „bezbarvý“ soubor, který po vložení do oranžové složky získá oranžovou barvu a bude dostupný pro oranžové uživatele.
V takovém případě se systém zachová tak, že vytvoří kopii objektu, tentokrát však bez uživatelských práv a po vložení do kontejneru (složky) objekt (soubor) zdědí nastavení práv.
Pokud soubor přesuneme na médium, které nepodporuje práva na úrovni systému souborů (typicky FlashDisk), nic se neděje, soubor pak půjde otevřít.
Mnohem zábavnější to bude, pokud bude jedna nebo obě složky šifrované. Pokud bychom soubor přesunuli, soubor zůstane zašifrovaný a na FlashDisku nám k ničemu nebude – k obsahu se nedostaneme. V tomto případě pomůže opravdu jen zkopírování souboru ze šifrované složky.
Kdyz je tu rec o sdileni, stalo by za to jeste uvest, jak je to s kartou "zabezpeceni" a nastavovani prav ve sdileni. Jak je to s prioritami? Sam MS ve sve znalostni databazi to moc neupresnil... (asi jsem cetl spatny clanek, nevim...).
naopak, jafi to napsal naprosto zjednodušeně (včeličky, motýlci).
takové w7 mají precizně zpracovanou nápovědu k této kartě, s přihlédnutím na obyčejného uživatele. pro čertoviny musíš obsadit web msdn.
zhruba řečeno:
je zděděný a nezděděný list- nezděděný přebíjí zděděný, pokud v nich je rozpor
jsou tři stavy
zakázáno- vyslovný zákaz
povoleno- výslovné povolení
neurčeno- systém se zařídí podle jiných pravidel, jsou-li, nebo povolí (povolení nemusí být pravidlem)
seřazeno podle "síly".
-
schopnosti se mění, jsou rozdílné, u složky, souboru, registry hives, objektů.
-
přirozeným pánem je skutečný vlastník, na to nezapomínat, jen ten, pokud si všechno zablokuješ , dokáže odemknout přístup k souboru/složce.
---
kdyžtak se ptej. na čertovinku prozkoumej flash plugin (activex), nebo ielowutil.exe a klidně pomocí cacls, karta nezobrazuje vše.
Pises to sice hezky, ale moc si nerozumime...
Ja mel na mysli, ze muzes libovolne nastavovat opravneni uzivatelum, skupinam v karte zabezpeceni. Potom, kdyz se dana slozka da nasdilet na sit, daji se pro sitove sdileni taktez nastavit opravneni. V tom je prave kamen urazu pokud pujdou proti sobe, ktere opravneni ma prednost? To z karty zabezpeceni? Napriklad - pokud bude nastaveno odepreni pristupu v zabezpeceni, bude mit prednost pred povolenim ve sdileni? (predpokladam, ze ano)...
Viz. MSDN
Jak kombinovana??? Podle jakych pravidel? To prave hledam...
ale to je přeci logický- přistupuješ místně- použijí se mistní, přistupuješ síťově, použijí se síťové a pokud success, tak jsi na místě a použijí se místní. vždycky musíš jít imaginární cestu s uživatelem, na co první narazí, to se hned řeší.
tyto oprávnění ber jako oprávnění disku, uživatel se musí probojovat k tomuto přístupu, dokud je na síti, ještě není na disku.
Diky.
Pokud pristupujes ze site, pouzije se kombinace obou.
Proklad:
1. mam plny lokalni pristup a ze site dam pouze pristup pro cteni. Pak se ze site dostanu na soubory pouze pro cteni
2. mam lokalne pristup pouze pro cteni a ze site plny pristup. Pak budu mit na soubor pristup pouze pro cteni