托管服务账号配置计划任务
发表于:2025-01-25 作者:千家信息网编辑
千家信息网最后更新 2025年01月25日,背景豆子需要设置一个计划任务然后用某个服务账号运行。传统的做法一般是创建一个服务账号,配置对应的权限,然后设定密码永不过期。这样的安全隐患是密码一直没改变。Windows 2008的时候微软推出了MS
千家信息网最后更新 2025年01月25日托管服务账号配置计划任务
背景
豆子需要设置一个计划任务然后用某个服务账号运行。传统的做法一般是创建一个服务账号,配置对应的权限,然后设定密码永不过期。这样的安全隐患是密码一直没改变。Windows 2008的时候微软推出了MSA(托管服务账号),本质是继承了计算机账户的特性,每次由计算机自动更换密码,这样完全不用管理人员的介入。但是当时MSA既不支持多台主机,也不支持计划任务,更别说第三方软件,所以实用性不大。Windows 2012以后,微软推出了新版本的gMSA,终于可以支持多台主机和计划任务了。gMSA每次改密码是由DC上面的KDS服务管理的,每次通过一个root key id,时间戳以及gMSA的SID通过某个复杂的算法生成一个随机的密码。注意这里的gMSA中的g代表的是group,也是说我们需要分配一个安全组给这个托管账户,安全组里面的所有计算机账户都可以去使用这个托管账户
具体操作
1. 创建一个KDS Root Key
注意!创建以后,需要等待10个小时让所有的DC同步
2.创建一个安全组,然后把需要管理的计算机加进去,重启对应的计算机
3. 创建gMSA账号
创建成功以后可以在Management Service Accounts这个容器下看见对应的账号
4. 安装gMSA到主机上
登录到对应的主机上面,执行下面的命令
基本的安装就完成了。下面就可以用这个gMSA账号来配置服务或者计划任务了
5. 配置计划任务
一个很恶心的地方是,图形界面不支持gMSA的配置。如果直接查找对应的账号,他会报错 说不存在
正确的方式是全程通过PowerShell实现
$F = "c:\scripts\syncErrornotification.ps1"#The first command uses the New-ScheduledTaskAction cmdlet to assign the action variable $A to the executable file tskmgr.exe$A = New-ScheduledTaskAction -Execute "C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe" -Argument "-noexit -ExecutionPolicy Bypass -File $F"#The second command uses the New-ScheduledTaskTrigger cmdlet to assign the trigger variable $T to the value AtLogon$T = New-ScheduledTaskTrigger -daily -At 7am#The third command uses the New-ScheduledTaskSettingsSet cmdlet to assign the settings variable $S to a task settings object$S = New-ScheduledTaskSettingsSet -Compatibility Win8 -ExecutionTimeLimit 3600 -ThrottleLimit 2#The fourth command assigns the principal variable to the New-ScheduledTaskPrincipal of the scheduled task, domainname\gMSA_account$$P = New-ScheduledTaskPrincipal -UserId omnicom\svc-it$ -LogonType Password -RunLevel Highest#The fifth command sets the description varible to $D for the task definition$D = "Office365 Sync Errors"#Register the scheduled taskRegister-ScheduledTask test -Action $A -Trigger $T -Principal $P -Description $D
该主机上还需要授予执行脚本的权利,点开gpedit.msc, 添加对应logon as batch job的权限
如果需要其他权限,例如本地管理员或者域管理员等权限,请自行添加。
6. 测试
第5步脚本会创建下面的计划任务,但是这个界面你如果用UI是无法实现的
实际的跑一下,1分钟之后我就收到邮件了, 成功
账号
任务
服务
主机
密码
管理
配置
安全
权限
计算机
账户
支持
托管
面的
成功
多台
界面
管理员
脚本
微软
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
株洲管理软件开发
商城项目订单数据库设计
dns服务器配置文件
湖南运营软件开发中心
新建数据库序列号
湖南华为服务器供应商
做软件开发感觉没前途
SP3D数据库管理员招聘
通天西游服务器
数据库default是
网络技术服务费包含哪些
6月小学网络安全教育内容
肯尼 史密斯 数据库
聚石塔安全服务器
设置数据库采样
网络课程软件开发方案
数据库借阅者信息
蚌埠餐饮软件开发公司
通信软件开发课程设计
什么是数据库系统阶段
海南互联网软件开发诚信服务
罗湖区互联网科技公司
优质软件开发公司哪家好
浪潮服务器 虚拟化
日照临盛互联网科技
网络安全和信息化建设的矛盾
fifa3球员数据库
商业化数据库查询
数据库不同请求覆盖数据
数据库不可再分