Piszę aplikację do zarządzania dostępem użytkowników do plików. Krótka wersja bardzo długiej historii polega na tym, że muszę użyć katalogu i plików, aby to zrobić. Brak systemu zarządzania dokumentami dla naszego taniego CEO ...C# Uprawnienia do plików/katalogów
W każdym razie ... Mam wszystko działa, z wyjątkiem przypadku, gdy użytkownik może zobaczyć, które pliki są w katalogu, ale nie widzą jego zawartości. (W plikach mogą znajdować się wrażliwe dane HR).
Próbowałem FileSystemRights.ListDirectory, ale wydaje się, że (dispite dokumentacja MS) ustaw również ReadData na true. Wyłączam ReadData (możliwość odczytu plików) i nagle nie mam już dostępu do katalogu. Te dwa elementy są połączone.
Wszelkich pomysłów, dla których pozwolenie (i) ustawić, aby to osiągnąć?
Mój obecny kod jest:
SetSecurity(pth, usr, FileSystemRights.ListDirectory, AccessControlType.Allow);
...
public void SetSecurity(string dirName, string account,
FileSystemRights rights, AccessControlType controlType)
{
// Get a FileSecurity object that represents the
// current security settings.
DirectorySecurity dSecurity = Directory.GetAccessControl(dirName);
dSecurity.AddAccessRule(new FileSystemAccessRule(account, rights, controlType));
// Set the new access settings.
Directory.SetAccessControl(dirName, dSecurity);
}
Dzięki.
--Jerry
Tak. Pliki dziedziczą z folderu. Kolejny "dyrektor generalny odmawia zakupu rozwiązania prawdziwego rozwiązania do zarządzania dokumentami", które musimy ustawić. – Jerry
Po przetestowaniu bez dziedziczenia w określonym folderze, masz rację. Możesz włączyć folder, a następnie wyłączyć sam plik i działa zgodnie z oczekiwaniami ... ale z innych powodów nie jest to opcja dla nas. – Jerry