首页 > 其他分享 >组策略-处理-脚本策略

组策略-处理-脚本策略

时间:2024-05-23 11:44:23浏览次数:8  
标签:脚本 策略 组策略 -- Windows 登陆

[脚本策略] 的 CSE(Client Side Extension) 为 [gpscript.dll],会将策略反应到注册表的如下位置:
■启动/关机策略
HKLM¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Group Policy¥Scripts
HKLM¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Group Policy¥State¥Machine¥Scripts

■登陆/注销策略
HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Group Policy¥Scripts
HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥Group Policy¥State¥<ユーザー SID>¥Scripts

[脚本策略] 的执行主体为 [gpscript.exe]。
-->由此应用程序执行脚本。

存在以下四种脚本策略
■计算机配置
[启动脚本 (StartUp)] & [关机脚本 (Shutdown)],分别在计算机启动/关机时执行,运行在 [SYSTEM] 上下文。

■用户配置
[登陆脚本 (Log-in)] & [注销脚本 (Log-off)],分别在用户登陆/注销时执行,运行在所登陆用户的上下文。
-->如果用户拥有本地管理员权限,则会忽略 UAC 弹窗直接执行。
-->如果用户没有本地管理员权限,则脚本运行失败,退出且不输出错误结果。

默认位置位于 SYSVOL 共享位置下:
-->可以更改,但不建议更改,脚本的文件大小不大,且运行在系统上下文,应限制为仅由域管理员进行管理。
-->当然,如果内网环境中引入了认证环节(未登陆时访问不了域控),可以事先将脚本分配到用户计算机上,路径填写用户设备上的绝对路径。
-->不过,PowerShell 脚本在未联网的状态下执行,所以,如果希望断网执行脚本,请使用 .bat 脚本。
[\<ドメイン名>\sysvol<ドメイン名>\Policies{GPO-GUID}\MACHINE\Scripts\Startup]
[\<ドメイン名>\sysvol<ドメイン名>\Policies{GPO-GUID}\MACHINE\Scripts\Shutdown]
[\<ドメイン名>\sysvol<ドメイン名>\Policies{GPO-GUID}\USER\Scripts\Logon]
[\<ドメイン名>\sysvol<ドメイン名>\Policies{GPO-GUID}\USER\Scripts\Logoff]

■脚本策略的处理中,分为 [前台处理] 和 [后台处理],
■以下策略的执行仅发生在 [前台处理] 期间。
-->其余策略在 [前台处理] 和 [后台处理] 期间均执行。

  1. StartUp(启动) & Log-on(登陆) 脚本策略
  2. 文件夹重定向
  3. 驱动器映射 (Drive Map)
  4. 软件安装
  5. 磁盘配额 (Disk quota)

其中,[前台处理] 再分为为 [同步模式] 和 [异步模式] 两种模式。
-->区别在于是否与解锁 Windows 桌面相关进程同步。
-->[关机脚本] 和 [注销脚本] 采用 [同步模式] 进行处理,处理模式不可变更。
-->[启动脚本] 和 [登陆脚本] 采用 [异步模式],处理模式可通过以下组策略变更。

-->Path:计算机/用户配置 > 策略 > 管理模板 > 系统 > 脚本 > [同步运行登陆脚本]/[异步运行启动脚本]。

  1. [同步模式] (Synchronous mode),全称:前台处理同步模式。
    -->脚本将逐条执行,前项成功后执行下一条,最后执行有关解锁 Windows 桌面的相关进程。
    -->所以,请注意避免将配置耗时过长的脚本配置在 [关机脚本] 或 [注销脚本] 中。
    1-1 服务端 OS 默认采用此模式;
    -->这并不意味着拉取不到策略就不能完成登陆,
    -->GPSVC(组策略客户端服务) 拉取策略超时后,会视为没有策略变更,进而不调用脚本策略的 [gpscript.dll] 而走缓存登录流。
    1-2 客户端及服务端 OS 的 [关机脚本] 和 [注销脚本] 默认均采用此模式;
    同时,以下策略涉及 [关键功能],客户端及服务端 OS 均采用 [同步模式] 进行处理。
    1-3 文件夹重定向;
    1-4 软件安装;
    1-5 基本设定的驱动器映射 (Drive Map);
    1-6 基本设定的磁盘配额。

  2. [异步模式] (Asynchronous mode),全称:前台处理异步模式。
    -->所有脚本依次开始执行,前序脚本未执行完成即开始后续脚本的执行。
    -->脚本执行完毕与否不影响解锁 Windows 桌面的相关进程。
    2-1 客户端 OS 默认采用此模式(除 [关机脚本] 和 [注销脚本] 及 [关键功能])。

为了避免同步模式下运行策略反应致使 OS 启动 (展示登陆界面) 和 Windows 登陆 (展示桌面) 花费较长时间,
Windows 客户端 OS 默认启用了 [高速登陆] 功能,使得用户可以不等待网络就绪,使用缓存登录。
-->某些情况下,这可能会导致仅在 [前台处理] 的策略不生效。
-->如果希望这些策略*在用户登陆即生效,则可以启用 [计算机启动和登陆总是等待网络] 策略。
-->这些策略是指:[启动脚本]、[登陆脚本]、[文件夹重定向]、[软件安装]、[磁盘配额]。
-->如果启用,则包括脚本策略,GPO 策略的反映都将运行在 [同步模式] 下,直至策略处理完毕才展示登陆界面 or 展示桌面。

-->Path:计算机配置 > 策略 > 管理模板 > 系统 > 登陆 > [计算机启动和登陆时总是等待网络]。

已知计算机启动时网络需要初始化,那么,
若网络未完成初始化时 [GPSVC] 便开始脚本策略的处理,则会导致策略读取失败,进而得不到反映。
-->换句话说,即便是 [同步模式] 的策略,如,软件安装、驱动器重定向等,如果超过等待时间仍不能拉取到策略,也会跳过不执行。
如果希望尽可能避免网络初始化导致的前台处理的策略得不到反映的情况,可以通过以下组策略来定义 [启动策略] 的迟延时间。
-->默认等待 30 秒,如果指定数值,OS 启动后 [GPSVC] 将严格等待相应时间,之后才展示 Windows 登陆界面。

-->Path:计算机配置 > 策略 > 管理模板 > 系统 > 组策略 > [指定启动策略处理等待时间]。

已知脚本的运行需要时间,那么,
处于 [同步模式] 执行的脚本策略因为某种原因迟迟不能完成,会导致用户无法进入登陆界面 or 桌面。
-->默认情况下,Windows 服务端 OS 的所有脚本策略,以及 Windows 客户端 OS 的 [注销脚本] 和 [关机脚本] 会以 [同步模式] 运行。
如果环境中发生这种长时间登陆不了的情况,可以通过以下组策略来定义最长等待时间。
-->默认 [GPSVC] 最大允许脚本执行 10 分钟,超时未结束则强制结束所有未完成的脚本。
-->当然,如果始终有脚本策略未能完成,也可考虑延长此时间(但可能会让用户长时间等待)。

-->Path:计算机配置 > 策略 > 管理模板 > 系统 > 脚本 > [指定组策略脚本的最长等待时间]

已知脚本的运行需要消耗系统性能,那么,
如果希望处于 [异步模式] 下执行的 [登陆脚本] 策略不与其他服务竞争系统性能,可以通过以下组策略来定义登陆脚本的迟延时间。
-->当然,如有需要,可定义 [0] 以立即执行 [登陆脚本]。
-->默认 [GPSVC] 迟延 5 分钟执行 [登陆脚本]。

-->Path:计算机配置 > 策略 > 管理模板 > 系统 > 组策略 > [配置登陆脚本延迟]

已知将 [配置登陆脚本延迟] 定义为 [0] 可以立即执行 [登陆脚本],那么,
如果希望 [登陆脚本] 未执行完成前不解锁 Windows 桌面,可以通过以下组策略将 [登陆脚本] 的执行配置为 [同步模式]。
-->配置此策略时,[配置登陆脚本延迟] 的配置将被忽略。

-->Path:计算机配置 > 策略 > 管理模板 > 系统 > 脚本 > [同步运行登陆脚本]

已知 [启动脚本] 和 [登陆脚本] 仅发生在 [前台处理] 期间,
若企业内网中引入了认证机制,未登录系统时无法访问位于网络路径中的脚本时,可以使用以下组策略,将脚本分配至客户端本地。

-->Path:计算机配置/用户 > 首选项 > Windows 设置 > 文件
-->之后,定义 [启动脚本] 和 [登陆脚本] 时,路径填写脚本的本地路径。

标签:脚本,策略,组策略,--,Windows,登陆
From: https://www.cnblogs.com/hagaki/p/18208052

相关文章

  • 组策略-处理-作用域
    [组织单元]是GPO的最小应用单元,可以通过作用域(安全筛选/WMI筛选)以实现GPO在[安全组]或[用户]或[设备指标]级别的应用。■安全筛选■WMI筛选创建WMI筛选器。在GPO的[作用域]中进行链接。受[MS16-072]*影响,如果使用组策略安全筛选,需同时要......
  • 组策略-处理-一般过程
    一:[处理间隔][计算机策略]于[Windows启动时]触发处理,[用户策略]于[用户登陆时]触发处理。-->此处理方式称之为[前台处理(foregroundprocess)]。默认情况下,成员计算机90~120分钟间隔再次触发处理,域控则每5分钟触发一次处理。-->此处理方式称之为[后台处理(back......
  • 组策略-专有名词
    ■GPT(GroupPolicyTemplate)由文件系统管理的数据,保存有GPO所定义的策略,是GPO的实体,通过文件共享(SYSVOL)进行公开。■GPC(GroupPolicyContainer)由AD数据库管理的数据,保存有GPT的配置信息(GPT的位置、版本信息等)。-->也有部分策略保存在GPC而非GPT中,如:软件......
  • Jmeter脚本--BeanShell PreProcessor
    整理一份之前项目中的接口测试文档内容,主要为了方便以后能够更好的进行接口测试需求,本次以Jmeter进行接口测试。API对应的使用手册    接口对应的测试用例如下图所示:编写Jmeter测试用例 用户注册信息 添加BeanShellPreProcessor预处理程序变量脚......
  • powershell脚本批量拉取 git仓库文件
    #定义基础URL和数据库列表$BASE_URL="http://8.8.11.99:8999/yaya/"$DATABASES="common-service","bi-system","erp","gateway","pdm","plm","public-service","scm",&quo......
  • 写一个Linux的 shell脚本删除目录 stud001~stud140 目录下的所有文件
    用户:在linux的shell脚本中写个循环,可以遍历目录stud001直到stud140,并将目录stud001到stud140目录中的内容全部删除。讯飞星火:在shell脚本中,我们可以使用for循环和rm命令来实现这个需求。以下是一个简单的示例:1#!/bin/bash2foriin$(seq-f"%03g"1140)3do4......
  • 记录一个批量拆分数据粘贴到各个表里的小脚本
    importosimporttkinterastkimporttkinter.filedialogfromtkinterimportttkimporttkinter.messageboxfromtkinterimportscrolledtextimportxlwingsasxwfrompandasimportExcelFilefrompandasimportread_excelglobaldf_total,cbox_sheet_ori,cbo......
  • 开发浏览器extension和开发油猴脚本的区别,全方位对比
     开发浏览器Extension(扩展)和油猴脚本(通常指的是Tampermonkey这样的用户脚本管理器)虽然都可以增强浏览器功能,但它们在多个方面存在显著的差异。以下是全方位的对比:1覆盖范围:浏览器扩展:通常提供全局性的增强,影响整个浏览器或特定类型的网页,可以修改浏览器界面、提供新的......
  • 制定问题管理的策略
    在IT技术人员和管理人员中,我们发现一个组织中,67.34%的组织缺少一个完整的问题管理计划,您的组织是否错过了高效的问题解决流程?ServiceDeskPlus可制定您自己的问题管理策略。 什么是IT问题管理呢?问题是多重事件的原因或潜在原因,题可能来自影响许多用户的重大事件,或者来自重复......
  • locust的一个测试脚本验证装饰器 tag,task
    importtimefromlocustimportHttpUser,task,between,tagclassQuickstartUser(HttpUser):wait_time=between(1,5)@task(3)@tag("tag1")defhello_world(self):self.client.get("https://haokan.baidu.com/?sfrom=bai......