2009-12-11 4 views
1

Modifier: Il semble que cela ne fonctionne pas. Certaines autorisations ne sont pas copiées sur il semble. Cela se trouve dans un Active Directory pour Exchange 2010. Dans la capture d'écran, il y a l'utilisateur "RTCUniversalUserReadOnlyGroup", avec la colonne "permission" vide. Ces autorisations ne sont pas copiées du tout. Des conseils?Hériter des autorisations Active Directory via C#

Je dois actuellement décocher la case "Inclure les autorisations pouvant être héritées de l'objet parent" dans Active Directory de manière programmatique.

EDIT: Nous avons dû mettre l'image de retour sous forme d'URL: http://i47.tinypic.com/2a8fed5.jpg

Je figurés la façon de décocher réellement, mais quand vous le faites à travers l'interface, il vous demande si vous souhaitez copier les autorisations actuelles ou les enlever.

Le seul moyen que j'ai trouvé est de lister manuellement les permissions, de les placer dans une variable temporaire puis de les rajouter après que la case à cocher ait été retirée. Je me demande s'il y a une meilleure façon de le faire et si quelque chose me manque. Cela semble fonctionner pour l'instant, mais c'est comme un hack qui viendra me mordre la crosse une fois le projet déployé.

+0

Édité votre question pour afficher l'image :) – Shoban

Répondre

0

Je suis un idiot, la solution était tout simplement d'utiliser

entry.ObjectSecurity.SetAccessRuleProtection(true, true); 

au lieu de

entry.ObjectSecurity.SetAccessRuleProtection(true, false); 

Je suppose que je ne peux pas lire!