【问题标题】:PowerShell script not deploying through Intune, would come back as successful however changes not seen未通过 Intune 部署的 PowerShell 脚本将成功返回,但未看到更改
【发布时间】:2022-06-17 23:57:37
【问题描述】:

我一直在尝试将此 PowerShell 脚本部署到我的一个测试单元,这涉及通过更改某些注册表项的值来更改 Windows 11 中的任务栏布局。当它通过 Intune 进行部署时,它返回成功,但未进行任何更改。该脚本在手动完成时也是成功的。有些东西我错过了,但我无法弄清楚。


$registryPath1 = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Search"

$registryPath2 = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"

$registryPath3 = "HKCU:\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced"

$name1 = "SearchboxTaskbarMode"

$name2 = "ShowTaskViewButton"

$name3 = "TaskbarAl"

$value1 = "0"
$value2 = "0"
$value3 = "0"

IF(!(Test-Path $registrypath1))

  {

    New-Item -Path $registryPath1 -Force | Out-Null

    Set-ItemProperty -Path $registryPath1 -Name $name1 -Value $value1 `

     }

 ELSE {

    Set-ItemProperty -Path $registryPath1 -Name $name1 -Value $value1 `

     }


IF(!(Test-Path $registryPath2))

  {

    New-Item -Path $registryPath2 -Force | Out-Null

    Set-ItemProperty -Path $registryPath2 -Name $name2 -Value $value2 `

     }

 ELSE {

    Set-ItemProperty -Path $registryPath2 -Name $name2 -Value $value2 `

     }

     IF(!(Test-Path $registryPath3))

  {

    New-Item -Path $registryPath3 -Force | Out-Null

    Set-ItemProperty -Path $registryPath3 -Name $name3 -Value $value3 `

     }

 ELSE {

    Set-ItemProperty -Path $registryPath3 -Name $name3 -Value $value3 `

     }`

【问题讨论】:

  • 这些是当前用户注册表项吗?这只会影响脚本运行的用户,除非它是登录脚本。您可以使用 $error.count 退出以查看是否有任何异常,或将其记录下来。用户可能还需要重新登录。
  • 脚本手动工作正常,只是通过 Intune 似乎没有确认任何更改。在几个单位上试过这个。
  • 如果 intune 以系统用户身份运行,那么它只会影响系统用户。您可以尝试将其作为组策略用户登录脚本,或者如果 intune 有类似的东西。

标签: powershell intune


【解决方案1】:

我不确定您的脚本发生了什么,但这里有一个脚本示例,我们已成功使用该脚本将注册表更改应用于 Intune 注册的 Windows 框。此脚本通过设置注册表项来实现“禁用 WinRM 服务的'允许基本身份验证'”安全更改。我们在 Windows Endpoint Manager 管理中心(设备 | 策略 | 脚本 | 添加脚本)中使用类似这样的脚本。

该脚本通过创建两个新的注册表项(我们发现在我们的环境中不存在)然后添加所需的注册表项来工作。请注意,该脚本可以运行多次 - 即使注册表项已经存在,前两个 new-item 命令也会成功。无需先测试是否存在。

New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows" -Name WinRM -Force
New-Item -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WinRM" -Name Service -Force
Set-Itemproperty -Path "HKLM:\SOFTWARE\Policies\Microsoft\Windows\WinRM\Service" -Name 'AllowBasic' -Type "Dword" -Value "0" -Force

在找出脚本在做什么方面,您是否查看了客户端设备上的“C:\ProgramData\Microsoft\IntuneManagementExtension\Logs”?

特别是,AgentExecutor.log 文件将包含 Intune 执行的 powershell 脚本的输出,并且在创建注册表项时,powershell 命令将生成如下所示的文本。大概你也可以在你的 Powershell 脚本中直接将内容回显到控制台,它最终会在这里用于调试目的,但我们还没有尝试过。

    Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows
Name                           Property                                                                                
----                           --------                                                                                
WinRM                                                                                                                  
    Hive: HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WinRM
Name                           Property                                                                                
----                           --------                                                                                
Service                                                                                                                

我们在端点管理器中使用这些脚本设置:

Run this script using the logged on credentials: No
Enforce script signature check: No
Run script in 64 bit PowerShell Host: No

其他潜在问题:

  • 网上似乎对何时执行这些脚本存在混淆。我们的经验是它们不会执行,除非重新启动机器。这是我们唯一一次在 AgentExecutor.log 中看到日志条目表明脚本已运行,也是我们唯一一次看到注册表条目被创建。
  • 如果您更改脚本并将其重新上传到 Endpoint Manager,则不清楚此更改是否会推广到分配的包含组。我们发现,如果您取消分配测试组、保存更改,然后重新分配测试组,然后重新启动测试组中的一台设备,则效果最佳。
  • 请耐心等待 - 我们已经看到在重新启动后最多延迟 10 分钟,然后我们才能在 AgentExecutor.log 中看到指示脚本已运行的日志条目。

我们已使用此方法对 50 多种已注册 Intune 的 Windows 设备推出了十多种不同的更改。 希望这会有所帮助...

【讨论】:

    猜你喜欢
    • 2019-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-19
    • 2017-04-23
    相关资源
    最近更新 更多