当 SD 无法访问时,在 C# 中设置文件/目录所有者
先生,
以下情况。网络共享中的某些文件即使是管理员也没有权限,仅为两个单独的用户设置权限。在检测和修复此类问题的操作过程中(因为这是不需要的),我需要添加对管理员的访问权限。
在 Windows 资源管理器中这很简单。由于我是管理员,因此我可以获取文件或文件夹的所有权,然后编辑安全描述符。
问题是,使用 FileSecurity.GetAccessControl() [或者更确切地说 FileSecurity.GetAccessControl(AccessControlSections.Owner)] 不起作用,我收到 UnauthorizedAccessException。
然而我 - 需要 - 能够做到这一点,有人有提示吗? P/Invoke 可能是这里的一个解决方案,如果是的话,我该怎么做?
我对这件事感到困惑,因为我认为它应该有效,因为它确实在资源管理器中有效......
谢谢炸弹! - 克里斯
Gentlement,
following situation. There are files in a network share to which even Administrators have no permissions, permissions are set for two individual users only. In the process of an operation to detect and fix such issues (because this is not desired) I need to add access to the Administrators.
In Windows Explorer that's easy. Since I am an Administrator, I can take the ownership of a file or folder and then edit the security descriptor.
The problem is, that using FileSecurity.GetAccessControl() [or rather FileSecurity.GetAccessControl(AccessControlSections.Owner)] does not work, I am getting an UnauthorizedAccessException.
However I -need- to be able to do this, anyone got a tip? Might P/Invoke be a solution here and if so, how would I do that?
I am confused by this matter, because I thought it should work, since it does work in the Explorer ...
Thanks a bomb!
- Chris
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
为了以防万一有人感兴趣,我找到了一个使用 PInvoke 的解决方案,并且确实有效,我尝试过的所有其他方法(包括激活权限和使用 .Net 方法)都失败了。
http://blog.mikeobrien.net/2009/ 11/take-ownership-and-setting-admin.html
Just in case anyone is interested, I found a solution that uses PInvoke and does in fact work, everything else I have tried, including activating the privilege and using the .Net methods, failed.
http://blog.mikeobrien.net/2009/11/taking-ownership-and-setting-admin.html