有没有办法允许某个用户在 Windows 7 或 Vista 中访问 /flushdns,这样即使他不是管理员,他仍然可以执行此操作并且不会出现此错误?
The requested operation requires elevation.
答案1
在 Vista 中,您可以添加“网络操作员”角色 - 这可能包括 flushdns。遗憾的是,自 7 以来,这似乎已经消失了 :(
答案2
我能想到的唯一方法是配置一个计划任务,以管理员身份以具有提升权限的登录帐户运行,当用户需要清除缓存时,他们只需转到任务计划程序,右键单击该任务并选择“立即运行”。
普通用户在未验证管理员凭据的情况下将无法修改任务(当他们尝试应用更改时,系统会提示输入密码),因此他们无法滥用您的帐户进行其他操作
答案3
我听说(虽然没有亲自测试过)你可以使用 UAC(用户帐户控制)策略设置这些特定权限。显然它们实际上比我们通常想象的要方便得多(我经常禁用它),但我还没有尝试过……
答案4
我猜测 sysinternals 的 regmon 可能会告诉您用户需要哪些注册表权限才能允许 ipconfig /flushdns。
Microsoft 官方文档在此处提到了与 DNS 相关的条目:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters
但有几个人在测试中发现,该条目的正确位置应该是:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters