如何以管理员身份执行章鱼部署步骤以调用 Update-SPSolution
Posted
技术标签:
【中文标题】如何以管理员身份执行章鱼部署步骤以调用 Update-SPSolution【英文标题】:How can I make octopus deployment step execute as administrator in order to call Update-SPSolution 【发布时间】:2017-05-08 16:54:26 【问题描述】:我已设置 Octopus 部署脚本,以使用 Update-SPSolution 和 WSP 包更新 SharePoint 解决方案。
当我从 Powershell ISE(以管理员身份运行)测试脚本时,它可以工作。 当我从 Powershell ISE(正常模式)测试脚本时,它失败并出现错误Update-SPSolution : Access denied
当我让它从 Octopus 运行时,它也失败并出现错误 Update-SPSolution : Access denied
我添加了以下代码,以查看我的代码在从 Octopus 运行时是否以管理员身份运行:
If (-NOT ([Security.Principal.WindowsPrincipal] [Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole(`
[Security.Principal.WindowsBuiltInRole] "Administrator"))
Write-Warning "You do not have Administrator rights to run this script! nPlease re-run this script as an Administrator!"
Break
虽然八达通触手服务的用户有权以管理员身份运行,但部署步骤在八达通运行时并未以管理员身份运行。
如何强制 Octopus 以管理员身份运行我的脚本?
【问题讨论】:
【参考方案1】:我遇到了同样的问题,powershell 脚本没有以管理员身份运行,并且无法添加/部署场解决方案。当我将运行 OctopusDeploy Tentacle 服务的帐户更改为农场管理员帐户时,它已为我解决。我执行了以下步骤:
-
打开 services.msc
找到 OctopusDeploy Tentacle,并将登录帐户更改为农场管理员帐户。重启服务。
【讨论】:
【参考方案2】:您是否尝试过使用库中提供的 SharePoint 步骤模板? https://library.octopusdeploy.com/step-templates/7ac03a43-cb18-4e83-a114-b158a2bb2a52/actiontemplate-sharepoint-solution-deployment
PS:我无法添加评论,因此使用此框来回答您的问题。
希望对您有所帮助。
茉莉
【讨论】:
我的步骤是这个步骤模板的自定义。它要求本地服务是农场管理员,我不喜欢这样做,以上是关于如何以管理员身份执行章鱼部署步骤以调用 Update-SPSolution的主要内容,如果未能解决你的问题,请参考以下文章