使用CreateDirectory、CreateFile创建目录和文件时,大多数人都将安全描述传NULL,这样有时候就会存在问题。如管理员权限创建的文件和目录,非管理员访问或使用就会失败,因此在使用这两个函数创建文件、目录时,如果有这方面的需求,就应该制定安全描述,或者将创建的文件、目录降低安全级别。
指定安全描述
SECURITY_ATTRIBUTES sa;
SECURITY_DESCRIPTOR sd;
InitializeSecurityDescriptor(&sd,SECURITY_DESCRIPTOR_REVISION);
SetSecurityDescriptorDacl(&sd,TRUE,NULL,FALSE);
sa.nLength = sizeof(SECURITY_ATTRIBUTES);
sa.bInheritHandle = TRUE;
sa.lpSecurityDescriptor = &sd;
CreateDirectoryW(lpPathName, &sa );

本文探讨了在使用CreateDirectory和CreateFile函数创建文件和目录时,安全描述的重要性。通常,大多数人会将安全描述传为NULL,这可能导致非管理员用户无法访问这些文件和目录。因此,为了确保文件和目录的访问权限正确,建议在创建时指定适当的安全描述,或调整文件和目录的安全级别。
4312

被折叠的 条评论
为什么被折叠?



