草庐IT

windows - Windows NT ACL 是如何工作的?

WindowsNT(尤其是XP、Vista和Server2008)ACL(访问控制列表)如何工作?它们背后的基本原理是什么,即从概念上讲,ACL中到底存储了什么,以及如何根据存储的信息评估访问权限?用于管理它们的基本命令行和其他实用程序是什么?也许还在答案中包含指向相关文档或教程的链接!附言。也许我应该在Serverfault中问这个问题? 最佳答案 Microsoft提供了大量有关该主题的在线文档:MSDN:AccessControlLists 关于windows-WindowsNTA

c++ - 如何从 C++ 更改 ACL?

如何从C++更改ACL?任何人都可以在没有任何确认的情况下帮助我从C++中执行以下操作:caclsc:\personal\file.txt/deveryone 最佳答案 使用下面的代码#include#includevoidSetFilePermission(LPCTSTRFileName){PSIDpEveryoneSID=NULL;PACLpACL=NULL;EXPLICIT_ACCESSea[1];SID_IDENTIFIER_AUTHORITYSIDAuthWorld=SECURITY_WORLD_SID_AUTHORITY

c# - 列出有权访问 NetFrameworkConfigurationKey ACL 的用户

我已使用“aspnet_regiis-pa"NetFrameworkConfigurationKey”将一些用户添加到RSAkey容器的访问控制列表(ACL)“用户”。如何列出已获得NetFrameworkConfigurationKey访问权限的所有用户?可以通过aspnet_regiis命令吗? 最佳答案 找到包含key的文件。如果这是机器key,它们位于此处:C:\ProgramData\Microsoft\Crypto\RSA\MachineKeys您可以将这些文件作为文本打开;在第一行查找NetFrameworkConfi

c - GENERIC_ALL 和文件夹/文件 ACL? GENERIC_ALL 到底做了什么?

我最近重新设计了我们的文件服务器的安全性,将大部分完全控制的内容标记为修改。现在我的开发人员告诉我,无论何时他们使用GENERIC_ALL打开文件(例如使用CreateFile()),他们都会收到拒绝访问的消息。经过研究,似乎没有什么能表明GENERIC_ALL只是GENERIC_EXECUTE+GENERIC_WRITE+GENERIC_READ;然而,情况似乎并非如此,因为开发人员能够添加三个常量值,并将其用于CreateFile()。那么,我想问...GENERIC_ALL到底做了什么?谢谢,马特 最佳答案 GENERIC_A

windows - 使用 powershell 删除文件夹上的所有 ACL

我是powershell脚本编写的新手(自从我开始学习powershell将近1个月。)我目前正在使用powershell2.0编写脚本来清理文件夹NTFSACL。我想删除除管理员之外的所有acl。我的问题是我无法找到一种方法来删除每一个非管理员的acl,而不了解他们。所以才来这里求powershellpro。 最佳答案 此代码删除acl:$acl=Get-Acl\\remote_server\share_folder\HAL.9000$acl.Access|%{$acl.RemoveAccessRule($_)}此代码添加管理员a

.net - 通过 SetSecurityDescriptor 设置 WMI ACL

我似乎无法通过Powershell设置WMIACL。调用Invoke-WmiMethod-Name"SetSecurityDescriptor"-Path"__systemsecurity=@"-ArgumentList$acl.psobject.immediateBaseObject返回这个异常:Invoke-WmiMethod:InvalidmethodParameter(s)Atline:1char:17.+Invoke-WmiMethodSetSecurityDescriptor正好接受__SecurityDescriptor类型的一个参数和我在-Arguments中使用的$a

windows - Windows 在哪里存储 ACL,ACL 是否会跟随一个文件从一台机器到另一台机器?

我们的应用程序使用一个组件,该组件需要我们的可执行文件所在目录中的许可证文件,它恰好是一个.NETWinForms应用程序,但我认为这对这个问题无关紧要。当安装在一些XPPro机器上时(目前只有几百台机器中的三台),该组件会抛出许可证异常。所以我重新生成了许可证文件并将其发送给组件供应商(EMCCaptiva),供应商声称错误是由于“用户”组对该文件没有读取权限。遇到错误的用户恰好是本地管理员,但这不是重点,因为我仍然对更一般的问题感到好奇。所以我的问题是,ACL是否存储在一个文件中,以便它们在文件的整个生命周期中都遵循该文件,尤其是当许可证文件是在我的开发机器(机器1)上生成,存储在

authentication - 如何使用redis作为mosquitto ACL的后端

我正在研究Mosquitto,并计划使用Redis作为后端来处理用户名/密码对身份验证和ACL。我正在使用JPmens的身份验证插件来执行此操作。蚊子session:auth_opt_backendsredisauth_plugin/etc/mosquitto/auth-plug.soauth_opt_redis_host127.0.0.1auth_opt_redis_port6379auth_opt_redis_userqueryGET%sauth_opt_redis_aclqueryGET%s-%s以下名称/密码对可以正常用于身份验证SETuser1PBKDF2$sha256$90

redis - Mosquitto ACL,Redis 后端不适用于有空间的主题

我正在研究Mosquitto,并使用Redis作为后端来处理用户名/密码对身份验证和ACL。我正在使用JPmens'用于执行此操作的身份验证插件。蚊子session:auth_opt_backendsredisauth_plugin/etc/mosquitto/auth-plug.soauth_opt_redis_host127.0.0.1auth_opt_redis_port6379auth_opt_redis_userqueryGET%sauth_opt_redis_aclqueryGET%s-%s一切正常。但是当我开始使用带空格的主题时,它只是拒绝我发布/订阅。我已经在Redis

authentication - 如何使用Redis作为mosquitto ACL的后端(使用JPmens插件)?

我正在研究Mosquitto,并计划使用Redis作为后端来处理用户名/密码对身份验证和ACL。我正在使用JPmens'authenticationplugin去做这个。身份验证工作正常,但我无法使ACL工作。Redis使用唯一key,用户名(在我的例子中是key)用于用户名/密码对以进行身份​​验证。我曾尝试在集合/列表中将用户名、密码和主题混合在一起,但它们都不起作用。蚊子session:auth_plugin/etc/mosquitto/auth-plug.soauth_opt_backendsredisauth_opt_redis_host127.0.0.1auth_opt_r