Gdzie właściciel pliku w systemie Windows ma znaczenie, skoro istnieją listy ACL?

12

Pochodząc z Linuksa, jestem przyzwyczajony do pliku posiadającego właściciela i grupę będącą właścicielem. Uprawnienia dostępu można ustawić osobno dla właściciela, grupy i innych osób i to wszystko.

Teraz w systemie Windows (opartym na NT) jest nieco inaczej, ponieważ Windows używa list ACL. Oznacza to, że zamiast mieć trzy listy uprawnień (właściciela, grupy, odpoczynku), mogę mieć tyle list uprawnień, ile chcę.

Jak dotąd ma to sens. Dlaczego jednak system Windows nadal ma pojęcie właściciela pliku? Wydaje mi się, że w przypadku list ACL „właściciel pliku” nie jest już potrzebny, ponieważ cały dostęp można skonfigurować za pomocą list ACL.

Dlaczego więc współczesny system Windows nadal korzysta z własności plików? Gdzie to ma znaczenie, kto jest właścicielem pliku? Tak długo, jak dwa pliki mają takie same listy ACL, własność pliku nie powinna mieć znaczenia - czy to prawda?

Śleske
źródło
Stosowany głównie do tworzenia sieci ... miejscowi używają UAC
Piotr Kula,
3
@ppumkin: Windows UAC jest tylko dodatkiem do systemu ACL.
user1686,
@ppumkin: Wyłącz UAC, a następnie spróbuj zastąpić pliki w System32. Listy ACL zatrzymają Cię na zimno .
surfasb,

Odpowiedzi:

10

Przede wszystkim, Linux nie mają ACL - POSIX ACL , które umożliwiają ustawienie bitów uprawnień dla dowolnej liczby użytkowników i grup. (Poprawki do RichACL , ACL bardzo podobne do NFSv4 i WinNT, były przesyłane wielokrotnie, ale nie zostały jeszcze scalone.)

Własność może być wykorzystana jako rodzaj ucieczki bezpieczeństwa - właściciel może zawsze zmienić listy ACL obiektu, nawet jeśli w innym przypadku zmiana zostałaby odrzucona, na przykład, jeśli ktoś przypadkowo usunie wszystkie wpisy ACL lub odmówi wszystkim zmian wszystkim. (W systemie Linux tylko właściciel lub administrator może zmieniać listy ACL pliku, ponieważ nie ma oddzielnego uprawnienia do „zmiany list ACL”).

Innym zastosowaniem własności pliku, zarówno w systemie Windows NT, jak i Linux, jest określenie, na którego przydziale należy liczyć plik, jeśli są używane przydziały dysku.

użytkownik1686
źródło
@surfasb Echoing swój komentarz. Naprawdę dobry argument za „dbaniem” o własność.
Erutan409
3

Jest duża różnica, jeśli spojrzysz na to z perspektywy administratora.

W systemie Linux root może robić wszystko bezpośrednio - konto jako domyślnie wszystkie uprawnienia do wszystkich obiektów w systemie plików i poza nim.

W systemie Windows administrator nie ma domyślnie uprawnień do wykonywania wszystkiego - tylko jeśli jesteś właścicielem obiektu (pliku, wpisu rejestru folderu, ...), który chcesz zmienić.

Weźmy na przykład folder, w którym administrator musi zmienić uprawnienia do plików. Jeśli administrator nie ma uprawnień do zmiany ustawień zabezpieczeń folderu, musi przejąć własność folderu, zanim będzie mógł uzyskać do niego dostęp / zmienić go.

Aktualizacja:

Ta funkcja jest ważna, ponieważ w środowisku kontrolowanym przez ACL może się zdarzyć, że plik ma pustą listę ACL, co oznacza, że ​​nikt nie ma dostępu (domyślna zasada odmowy). W takim przypadku przejęcie własności jest jedynym sposobem uzyskania dostępu lub usunięcia pliku.

Robert
źródło
1
Czy to oznacza, że ​​tylko właściciel pliku może zmienić swoje uprawnienia? Lub dlaczego administrator może przejąć własność pliku, ale nie może bezpośrednio zmienić uprawnień?
sleske,
Zobacz moją zaktualizowaną odpowiedź.
Robert,
@sleske: Tak, właściciel obiektu zawsze może zmienić swoje uprawnienia.
surfasb,
2

Właściciel obiektu zawsze może zmieniać listy ACL.

kinokijuf
źródło
1
Jak jednak zmienić listę ACL?
Simon Sheehan,
1
Korzystanie z karty bezpieczeństwa we właściwościach.
kinokijuf,