第 29 讲:有效权限实战
第 29 讲:有效权限实战
卷五·排障与设计(共 3 讲)
师生对话实录课:AI 当老师、我当 0 基础学生,每讲只发明一个概念。本机实测 2026-08-26。
开场:配完了,然后呢?
🧑🏫 老师:
第 28 讲把两道门配好了。配完之后呢?很多运维的验收就是「我觉得改对了」——然后第二天:该能看的人打电话说打不开(组刚加、令牌还是旧的;或一条 Deny 忘删);不该能改的人把只读文件改了(共享门漏配、或继承带下来了);用自己管理员账号去试,能打开就说「没问题」——可管理员带着 SeTakeOwnership、SeBackup 这些特权(第 21 讲的账本),什么都能开,等于没试。
第 13 讲给了「有效访问」这一个动作,但它只是单点。本讲把它扩成一条每次改完权限都跑一遍的流水线:
改权限 → 有效访问 → 真人试开 → UNC 再验。
| # | 动作 | 堵住的坑 |
|---|---|---|
| 1 改 | icacls / 安全选项卡改 ACE | — |
| 2 算 | 有效访问,选目标用户算 | Deny 压过 Allow、继承带下来的意外权限 |
| 3 试 | 用那个用户的身份真去开 | 令牌过期(组刚加没重登)、特权绕过 |
| 4 验 | 走 UNC 路径再开一遍 | 共享权限这第二道门(第 28 讲) |
🧑🎓 学生: 第 3、4 步为什么不能省?
🧑🏫 老师:
这是本讲和第 13 讲的关键区别:有效访问算的是「按 ACL 字面,此人该不该能」——它不知道那人电脑上的令牌是不是新的、有没有旧会话还在用旧组。真人试开算的是「此刻那个真实进程,真能打开吗」——令牌过期、缓存凭据,只有真人跑才暴露。UNC 再验算的是「走共享这条路还能不能」——本机有效访问好看只证明 NTFS 侧没问题。
改完别急着回。算一遍、试一遍、走网线再一遍。用管理员账号试 = 没试。
第 1 课:「真人试开」的自动化版
🧑🏫 老师:
runas /user:jzfz\xiaoli "notepad …" 是真人试开的标准姿势。卷一到现在我们一直在用它的免交互等价物——拿目标用户的凭证起一个进程替我们跑:
$pw=ConvertTo-SecureString 'P@ssw0rd2' -AsPlainText -Force
$c =New-Object System.Management.Automation.PSCredential("PC3507\LabUser2",$pw)
Start-Process cmd.exe -Credential $c -ArgumentList '/c type C:\Lab\share\proj\plan.txt > C:\Lab\as-out.txt 2>&1' -Wait -WindowStyle Hidden
Get-Content C:\Lab\as-out.txt ← LabUser2 眼中的结果,不是我的第 28 讲的双账号验证就是这么跑的:LabUser1(组内)读 ✓ 写 ✓、LabUser2(组外)读 ✓ 写拒——一次配好,永久可重复:改完 ACE 重跑两条命令,立刻知道「真人」还能不能。注意它和 runas 一样是全新登录会话——所以它同样会暴露「组刚加、令牌没刷新」类问题(这正是我们要它暴露的)。
第 2 课:留痕——五栏记录表
🧑🏫 老师:
流水线要可重复就得留痕,每次改权限填一张五栏小表(贴在工单里):
| 对象(打到具体文件) | icacls 摘要 | 有效访问(选谁) | 真人试开 | UNC 再验 |
|---|---|---|---|---|
C:\Lab\share\proj\plan.txt | LabReaders:(M) AuthUsers:(RX) | LabUser2:读允许/写不允许 | LabUser2 读✓写拒✓ | (本机回环受限,二机环境补) |
两条纪律:① 对象栏打到那个抱怨的文件,别只填父目录——父目录和文件可以是两扇门(第 13 讲),有效访问打在父目录上是「能进文件夹」,不代表「能打开里面那个文件」;② 真人栏填目标用户本人(或同组等价账号),不是你——你是管理员,你试出来的「能开」对领导没有说服力(第 21 讲的特权账本 explains why)。
四步的 GUI/命令对照:有效访问(属性 → 安全 → 高级 → 有效访问,选目标用户);看原料 icacls <那个文件>——icacls 列规则、有效访问列结论,两者对得上第 2 步才算过;真人 runas /user:… "notepad …"(或上面的凭证进程);UNC runas /user:… "cmd /k dir \\\\服务器\共享\…"(本机/域账号不一致加 /netonly——第 18 讲 LogonType 9)。
收束
你现在会了: 四步流水线(改 → 算 → 试 → UNC 验)及每步为什么不能省——管理员试等于没试、只查 NTFS 漏共享、只查父目录漏文件、有效访问看不见令牌过期;凭证进程版「真人试开」可脚本化重复;五栏表留痕。
下一讲才需要: 流水线解释不了的那些怪情况——排障案例集。
← 上一章:第 28 讲:共享设计
· 回书稿索引
→ 下一章:第 30 讲:排障案例集