访问掩码格式

所有安全对象都使用下图所示的访问掩码格式来安排其访问权限。



在这种格式中,低16位用于特定对象的访问权限,后8位用于标准访问权限,这些权限适用于大多数类型的对象,而4个高位用于指定通用访问权限每种对象类型可以映射到一组标准和特定于对象的权限。 ACCESS_SYSTEM_SECURITY位对应于访问对象的SACL的权限。

C# FileSystemRights 枚举对应的就是访问掩码

把FileSystemRights 转化成32位的访问掩码格式,如下C#代码:

foreach(var  ss in Enum.GetValues(typeof(FileSystemRights)))
{
Console.WriteLine($"{ss.ToString().PadLeft(28)}:{Convert.ToString((int)ss,2).PadLeft(32,'0')}");
}

FileSystemRights映射到访问掩码上

通用访问权限

全对象使用访问掩码格式,其中四个高位指定通用访问权限。每种可保护对象的类型都将这些位映射到一组其标准和特定于对象的访问权限。(也就是说通用权限是由标准位和特殊位映射出来的)例如,Windows文件对象将GENERIC_READ位映射到READ_CONTROLSYNCHRONIZE标准访问权限以及FILE_READ_DATAFILE_READ_EAFILE_READ_ATTRIBUTES这三个对象特定的访问权限。其他类型的对象将GENERIC_READ位映射到适合该类型对象的任何访问权限集。
可以使用通用访问权限来指定打开对象的句柄时所需的访问类型。会比指定所有相应的标准和特定权限要简单。
下表显示了为通用访问权限定义的常量。

标准访问权限

每种类型的可保护对象都有一组访问权限,这些访问权限对应于特定于该类型对象的操作。除了这些特定于对象的访问权限之外,还有一组标准访问权限,它们对应于大多数类型的可保护对象的通用操作。
访问掩码格式包括一组用于标准访问权限的位。 Winnt.h中定义了以下Windows标准访问权限常量。

最新文章

  1. iOS 10 :用 UIViewPropertyAnimator 编写动画
  2. angular-ui-bootstrap-modal必须要说的几个点(转)
  3. Java 导入Excel文件到数据库
  4. 实现socket非阻塞设置
  5. MVC中你必须知道的13个扩展点
  6. 第一次作业---安卓开发工具Android studio发展演变
  7. QQServer_update
  8. WIX Custom Action (immediate, deffered, rollback)
  9. VS2005调试时无法找到调试信息解决方法
  10. 软硬结合的可穿戴式app
  11. Jenkins搭建Windows slave 环境
  12. ubuntu用不了root用户:~$ su - root Password: su: Authentication failure怎么办?
  13. CommonsChunkPlugin相关
  14. 【Storm篇】--Storm基础概念
  15. 【转】/bin/bash^M: bad interpreter: No such file or directory
  16. CY7C68013 USB接口相机开发记录 - 第一天:资料下载
  17. 字符串转json格式
  18. redis 过期时间与缓存
  19. CentOS常用的文件操作命令总结
  20. python3版本main.py执行产生中间__pycache__详解

热门文章

  1. java-异常-异常捕捉及多catch情况(try-catch)
  2. 使用ansible 批量分发ssh密钥
  3. CSS之创意hover效果
  4. v76.01 鸿蒙内核源码分析(共享内存) | 进程间最快通讯方式 | 百篇博客分析OpenHarmony源码
  5. 马哈鱼间接数据流中的where-group-by子句
  6. 从服务端生成Excel电子表格(GcExcel + SpreadJS)
  7. SSH 密钥登录
  8. vi TOhtml:复制保持格式和高亮
  9. C++ XML解析之TinyXML
  10. Shell之awk