windows - 将用户添加到本地桌面管理员组后,如何在不注销/登录的情况下立即强制权限
问题描述
将用户添加到本地管理员组后......即使用户在本地组中,他们仍然没有作为桌面管理员的有效权限。他们必须至少注销/登录或重新启动才能使权限生效。我想知道是否有办法通过命令行以无缝方式做到这一点。
此资源: http ://woshub.com/how-to-refresh-ad-groups-membership-without-user-logoff/
说,你可以使用:
klist -li 0:0x3e7 purge
但是,在我运行该命令之后,它没有任何区别;我仍然必须注销/登录或重新启动才能获得有效的权限。
解决方案
这里有两件事在起作用:
- 本地机器认为你的权限是什么
- 当你连接到它们时,其他机器认为你的权限是什么
清除票证缓存klist purge
将删除您的用户票证缓存。这将影响 (2),因为当您尝试与另一个服务通信时,您必须首先获得一个新的 TGT,它实际上包含您的组成员信息。这就是为什么您的会员信息会被缓存“一段时间”的原因,即因为 TGT 会停留一段时间,当您请求另一个服务的票证时,域控制器实际上只是将 TGT 的内容复制到新请求的票,并且 TGT 可以存在一周或更长时间。
获得新的 TGT 将始终准确地返回 DC 认为您的会员资格。
影响(1)更复杂。Windows 将此信息存储在所谓的 NT 令牌中,该令牌在登录会话的生命周期内是不可变的。NT 令牌在登录期间获取您的组成员身份。Windows 向 DC 询问该信息,并在收到时将其复制到 NT 令牌中。这就是为什么看起来您的成员身份没有改变的原因,也就是说,因为 Windows 没有关闭以获取您的新成员身份信息,也没有刷新您的 NT 令牌(因为它不能,因为它是不可变的)。
碰巧的是,登录会话不是永远存在的,实际上只存在于会话解锁之间。一旦与 DC 通信,您的会员信息将在锁定/解锁后不久刷新。
推荐阅读
- angular - TypeError:无法使用 InvalidPipeArgument 读取 null 的属性“名称”:管道“AsyncPipe”的“[object Object]”
- python - XLSX 仅写入数组中的最后一个索引
- php - 将 json 文件转换为 php 数组以从数组中选择随机名称
- ios - 将砌体 x/y 约束设置为视图宽度/高度的百分比
- autolisp - 是否可以使用 Autolisp 将查找参数推送到多个块定义中
- amazon-web-services - Elixir:ExAws:DynamoDB:查询过滤器
- android - Android中线性布局中的按钮右对齐,按钮并排
- rxjs - 工作期间缺少Angular vesion 7核心模块
- css-float - 为什么 CSS Float 不会将我的文本移动到图像的右侧
- spring-cloud - 为什么我的 Spring Cloud 函数试图打开本地 HTTP 连接?