当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

作者:精品下载站 日期:2024-12-14 06:53:57 浏览:15 分类:玩电脑

如何使用 Intune 在 Windows 设备上创建本地管理员帐户


在本教程中,我将向您展示如何使用 Microsoft Intune 在 Windows 设备上创建新的本地管理员帐户。虽然专业人士和 MVP 有一些首选方法来创建本地管理员帐户,但这里我们将使用一个简单的 PowerShell 脚本来检测和创建帐户。

您应该使用内置的本地管理员帐户吗?

人们经常会问,为什么创建新的本地管理员帐户需要增加复杂性,以及为什么不能只使用内置 Windows 帐户。那么,这背后的原理可以简单地分为以下几点:

  • 内置管理员帐户具有众所周知的SID。即使该帐户被重命名,攻击者也可以轻松枚举到该帐户。
  • 默认情况下无法锁定帐户。 使其容易受到暴力攻击。 (自 2022 年 10 月 11 日起,可以对此帐户强制执行帐户锁定,但默认情况下未启用)
  • CIS 建议您不要使用它。互联网安全中心 (COS) 为行业内各种产品的最佳实践配置提供了备受推崇的建议。有时,公司必须简单地遵守政策并遵守标准才能满足合规性要求。

非常简单的本地管理员帐户

使用 Microsoft Intune 在 Windows 设备上创建本地管理员帐户的过程可概括为以下步骤:

  1. 创建一个 PowerShell 脚本来检测该帐户是否存在并且是否是本地管理员组成员。
  2. 创建一个 PowerShell 脚本来创建该帐户(如果该帐户不存在)并将其添加到本地管理员组。
  3. 作为修复脚本包上传到 Intune

您必须考虑采用这种方法,您应该有一种方法可以在部署帐户后更改和管理帐户的密码。最好的方法是将 Windows LAPS 与 Microsoft Entra 和 Intune 结合使用。

检测脚本

<#
Written by Daniel Bradley
https://ourcloudnetwork.com/
https://www.linkedin.com/in/danielbradley2/
#>

#The name of the account
$AccountName = 'localadmin'

#Check if user exisis
$Userexist = (Get-LocalUser).Name -Contains $AccountName
if ($userexist) { 
  Write-Host "$AccountName exists" 
} 
Else {
  Write-Host "$AccountName does not Exists"
  Exit 1
}

#Check if user is a local admin
$localadmins = ([ADSI]"WinNT://./Administrators").psbase.Invoke('Members') | % {
 ([ADSI]$_).InvokeGet('AdsPath')
}

if ($localadmins -like "*localadmin*") {
    Write-Host "localadmin is a member of local admins"
    exit 0     
} else {
    Write-Host "ohglocaladmin is NOT a member of local admins"
    exit 1
}

修复脚本

<#
Written by Daniel Bradley
https://ourcloudnetwork.com/
https://www.linkedin.com/in/danielbradley2/
#>

#The name of the account
$accountName = 'localadmin'

#Add system.web assembly
Add-Type -AssemblyName 'System.Web'
 
#Check if user exisis
$Userexist = (Get-LocalUser).Name -Contains $AccountName
if (!$userexist) {
    $password = [System.Web.Security.Membership]::GeneratePassword(20,5)
    $Securepassword = ConvertTo-SecureString $Password -AsPlainText -force
    $params = @{
        Name        = $accountName
        Password    = $Securepassword
    }
    New-LocalUser @params
}

# Add the account to the Administrators group
Add-LocalGroupMember -Group "Administrators" -Member $accountName

将修复脚本上传到 Microsoft Intune

首先需要将检测脚本和修复脚本保存到 PowerShell 文件中。您可以通过将上述每个脚本复制并粘贴到记事本文件并使用 .ps1 文件扩展名保存来完成此操作。完成后,请按照以下步骤将它们上传到 Intune:

1. 登录Microsoft Intune

2. 选择设备,然后选择补救措施

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

3. 选择创建脚本包

4. 定义基本修复设置,例如包的名称和有意义的描述

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

5. 在设置页面上,将两个脚本文件上传到相应位置,然后确保脚本不在用户上下文中运行,并将强制脚本签名检查设置为否。因为此包范围内的所有工作站都应该是64 位,将在 64 位 PowerShell 中运行脚本设置为

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

6. 在分配页面上,将修复包分配给目标用户组,并定义修复包的运行频率。

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

7. 然后单击创建

监控部署进度

您应该根据您定义的计划允许修复包运行一些时间。否则,您可以在目标设备上手动运行修复包,作为 Intune 设备边栏选项卡中的测试。

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

要监控部署的状态,请选择修复包并单击概述菜单选项。您将立即看到已检测和修复的设备总数的高级概述。您还可以在设备状态菜单页面上查看更详细的信息,如下所示:

[玩转系统] 如何使用 Intune 在 Windows 设备上创建本地管理员帐户

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯