NT AUTHORITY\SELF是什么?与Everyone的区别及权限授予疑问
核心身份区别
NT AUTHORITY\SELF:代表当前访问资源的主体自身,是一个上下文相关的身份。比如Windows服务以某个账号运行时,访问自身配置文件时,SELF就指向该服务账号;用户访问自己的个人文件时,SELF就是该用户账户。只有资源的当前访问主体能触发这个身份的权限。Everyone:包含所有能访问系统的实体,是全局范围的身份组,涵盖本地用户、域用户、网络用户甚至匿名访问者。任何连接到系统的主体都属于这个组。
授予 SELF 权限是否属于不良实践?
这是常见且合理的安全实践,并非不良操作,原因如下:
- 符合最小权限原则:仅允许资源的当前访问主体操作资源,权限范围远小于
Everyone,不会给无关用户开放权限。 - 适配服务/应用场景:Windows服务、IIS应用池等进程需要访问自身的配置、日志、临时文件时,授予
SELF权限能确保正常运行,同时避免权限过度开放。 - 降低维护成本:如果用具体账户替代
SELF,当服务账号变更时需重新配置权限;SELF是上下文自适应的,无需手动更新。
需要注意的边界情况:
- 不要给
SELF授予超出需求的权限(比如仅需读取却给完全控制),始终遵循最小权限。 - 公共共享资源无需配置
SELF权限,因为访问主体是不同用户,SELF此时指向每个访问用户,无法实现预期的共享管控。
内容的提问来源于stack exchange,提问作者daisy
相关产品推荐
相关产品推荐

