En C# (2.0) Comment puis-je supprimer toutes les autorisations d'un répertoire, donc je peux limiter l'accès. Je vais ajouter l'accès à un nombre limité d'utilisateurs.Supprimer toutes les autorisations de répertoire
Répondre
Examinez les classes de l'espace de noms System.Security.AccessControl, et en particulier la méthode DirectorySecurity.RemoveAccessRule.
En outre, si vous supprimez toutes les autorisations, vous ne serez pas en mesure d'ajouter tout retour après :-)
Voici un grand ensemble d'articles de CodeProject sur la programmation Windows ACL:
The Windows Access Control Model
Part 3 de la série montre des méthodes spécifiques .NET.
System.IO.Directory.GetAccessControl(), puis modifiez l'objet FileSecurity renvoyé.
Répertoire Budy. –
presque le même ^^ Je l'ai changé maintenant. – codymanix
Disclaimer: Je sais que cela a déjà été répondu et accepté, et je voulais vraiment poster ceci comme un commentaire à la réponse acceptée, cependant l'incapacité de pouvoir mettre en forme des commentaires m'a forcé à signaler ceci comme réponse (qui, techniquement, il est) ....
Je cherchais à faire le même, et trouvé votre question. La réponse de Stu m'a aidé à trouver cette solution. (Notez que je ne suis intéressé que par la suppression de la sécurité explicite).
private static DirectorySecurity RemoveExplicitSecurity(DirectorySecurity directorySecurity)
{
AuthorizationRuleCollection rules = directorySecurity.GetAccessRules(true, false, typeof(System.Security.Principal.NTAccount));
foreach (FileSystemAccessRule rule in rules)
directorySecurity.RemoveAccessRule(rule);
return directorySecurity;
}
Et ceci est évidemment utilisé comme suit:
DirectoryInfo directoryInfo = new DirectoryInfo(path);
DirectorySecurity directorySecurity = directoryInfo.GetAccessControl();
directorySecurity = RemoveExplicitSecurity(directorySecurity);
Directory.SetAccessControl(path, directorySecurity);
- 1. Les autorisations de fichier n'héritent pas des autorisations de répertoire
- 2. Autorisations de fichier/répertoire C#
- 3. Supprimer toutes les images
- 4. SQL: supprimer toutes les données de toutes les tables disponibles
- 5. Spring.net Supprimer toutes les connexions adotemplate?
- 6. syntaxe pour supprimer les autorisations précédemment accordées via GRANT EXECUTE?
- 7. Autorisations supprimer des fichiers Windows Lot
- 8. Supprimer le répertoire VSMacros80
- 9. comment supprimer toutes les lignes de DB via OpenRecordset (DAO)
- 10. Énumérer les partages réseau Windows et toutes les autorisations personnalisées sur ou à l'intérieur de
- 11. Supprimer le répertoire de SVN sans le supprimer du serveur
- 12. Supprimer définitivement un répertoire de git
- 13. Reconstruire toutes les interfaces en fonction du répertoire des implémentations
- 14. Utilisez NMAKE pour créer toutes les sources dans un répertoire?
- 15. Supprimer un répertoire de git localement
- 16. Mysql: supprimer par programme toutes les clés étrangères
- 17. QTP/VBScript: comment supprimer toutes les URL d'une chaîne?
- 18. Comment modifier les autorisations de fichiers pour empêcher Vista d'écrire dans un fichier du répertoire VirtualStore?
- 19. Supprimer toutes les balises HTML à l'exception des liens
- 20. Supprimer toutes les balises HTML et le formatage (RegEx)
- 21. Supprimer tous les fichiers dans un répertoire vb6
- 22. Comment supprimer toutes les lignes correspondantes dans un seul tampon?
- 23. Comment supprimer un noeud d'arbre binaire avec toutes les possibilités?
- 24. PHP Zip extractTo - problème avec les autorisations
- 25. TSQL pour afficher, ajouter et supprimer des autorisations
- 26. Autorisations Unix de Windows
- 27. Autorisations de fichier IIS
- 28. Comment limiter les autorisations ASP.NET par page ou par répertoire (sécurité d'accès au code par page ou par répertoire)
- 29. Autorisations de sécurité du registre .Net - L'utilisateur avec les autorisations ne peut pas accéder au registre
- 30. Comment puis-je accorder des autorisations pour un dossier FTP pour les utilisateurs du répertoire actif?
J'ai trouvé cet outil utile pour vérifier que mon code fonctionnait bien. Il vous montre les autorisations de répertoire définies dans la hiérarchie des dossiers. c'est-à-dire uniquement lorsque les autorisations sont définies, pas héritées - http://www.youtube.com/watch?v=aZLIioUl-5k – pfeds