首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >电源启动-使用serviceAccount SailPoint IQService的作业

电源启动-使用serviceAccount SailPoint IQService的作业
EN

Stack Overflow用户
提问于 2021-10-16 05:03:38
回答 1查看 162关注 0票数 0

因此,这个问题有几个因素在起作用,下面是:

admin)

  • Powershell

  • SailPoint 8.2和IQService 8.2

Server 2016

  • A服务帐户(域管理)

  • 交互式用户帐户(域

  • 5.1构建14393修订版4583

F 211)

因此,我们拥有的是SailPoint在其末端执行一条规则,将一些信息发送给IQService,而IQService则将PowerShell脚本作为服务帐户执行。在其中一个PowerShell脚本中,我们有以下命令:

代码语言:javascript
复制
LogToFile("calling start job")


$j = Start-Job -ScriptBlock { C:/SailPoint/Scripts/PowershellContainerAfterCreateRetry.ps1 -sAMAccountName $args[0] -company $args[1] } -ArgumentList $sAMAccountName, $company -Name 'PowershellContainerAfterCreateRetry'
LogToFile($j | Select-Object -Property *)
LogToFile("finished start-job")

这就是事情变得有趣的地方,因为正如您可以注意的那样,这个命令可以记录到文件以查看它的输出,如下所示:

代码语言:javascript
复制
calling start job
@{
State=Running; HasMoreData=True; 
StatusMessage=; 
Location=localhost; 
Command= C:/SailPoint/Scripts/PowershellContainerAfterCreateRetry.ps1 -sAMAccountName $args[0] -company $args[1] ; 
JobStateInfo=Running;
Finished=System.Threading.ManualResetEvent; 
InstanceId=aa889c06-7a8a-402e-807a-880d02465bdd; Id=1; 
Name=PowershellContainerAfterCreateRetry; 
ChildJobs=System.Collections.Generic.List`1[System.Management.Automation.Job]; 
PSBeginTime=10/15/2021 21:14:22; PSEndTime=; 
PSJobTypeName=BackgroundJob;
Output=System.Management.Automation.PSDataCollection`1[System.Management.Automation.PSObject];
Error=System.Management.Automation.PSDataCollection`1[System.Management.Automation.ErrorRecord];
Progress=System.Management.Automation.PSDataCollection`1[System.Management.Automation.ProgressRecord];
Verbose=System.Management.Automation.PSDataCollection`1[System.Management.Automation.VerboseRecord];
Debug=System.Management.Automation.PSDataCollection`1[System.Management.Automation.DebugRecord];
Warning=System.Management.Automation.PSDataCollection`1[System.Management.Automation.WarningRecord];
Information=System.Management.Automation.PSDataCollection`1[System.Management.Automation.InformationRecord]}
finished start-job

当我单独执行这个命令或者在这个脚本中使用执行这个命令时,它没有问题就完成了,并且调用了这个脚本,并且一切都很完美!(无论我是使用我的互动帐户还是使用服务帐户)

当这个脚本使用IQService执行时,会发生“ether”的事情--我说“ether”是因为我没有任何日志文件或错误;它似乎消失在了乙醚中。(我在PowerShell脚本中写了五行日志,所以人们会认为我至少会得到一些东西!?!我离开ideas...thoughts了吗?

作为一个小提示,我做了一个实验,告诉我设置应该没有问题就成功了,有一些奇怪的地方--就像上面看起来正在执行的一样(因为我可以看到上面的相同信息,显示作业已经开始了)。不过,就像上面的一样,它从来没有真正“出现”完成或错误退出。我唯一能想到的是,在某种程度上,主脚本结束时也会导致它关闭--但如果是这样的话,我会认为它可以得到一些日志文件吗?Anyway...thanks用于阅读!

代码语言:javascript
复制
$doit = {
"test" | Out-File -filepath ("c:\test.txt") -append
}
Start-job -ScriptBlock $doit
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-21 16:48:23

我认为开始-作业是这里的问题,因为iqservice将启动一个powershell脚本进程,这可能不支持您试图使用的后台作业方面。

如果您需要进行重试或等待和循环,则需要使用另一种身份验证/iqservice机制( iiq中的工作流--可能是在条件发生、计时器命中等情况下调用AD的工作流)。除了在iqservice powershell脚本中开始作业之外。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69592820

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档