小编pau*_*nic的帖子

如何从PowerShell指定应用程序池标识用户和密码

我在使用应用程序池标识自动设置Web应用程序和配置IIS时遇到了很多困难.我在用PowerShell编写的Web应用程序部署脚本中执行此操作.我的要求是我需要使用PowerShell脚本将应用程序池标识用户设置为特定的服务帐户mydomain\svcuser和password.以下是示例代码:

$pool = New-Item "IIS:\AppPools\MyAppPool" -Force
$svcuser = "mydomain\svcuser"
$pool.processModel.userName = $svcuser
$password = "somepassword"
$pool.processModel.password = $password
$pool.processModel.identityType = 3
$pool | Set-Item -ErrorAction Stop
Run Code Online (Sandbox Code Playgroud)

当我运行它时,一切似乎都正常工作 - 没有错误被抛出,应用程序身份用户名出现在IIS中 - 但由于某种原因,密码没有正确设置,如果有的话.由于它是一个密码,我无法验证它是否已设置,但我可以断定,如果它是,它没有设置正确.在我手动进入并在IIS中输入密码之前,它不会对生成的应用程序池用户进行身份验证.因此,应用程序在部署到Web服务器后失败,需要手动干预.

我在这里错过了什么吗?

iis powershell iis-7 web-administration powershell-3.0

26
推荐指数
2
解决办法
4万
查看次数

如何以编程方式触发门禁签到?

我在TFS中使用Workspace.Checkin命令时收到错误,因为我尝试检入的文件是Gated构建定义的一部分.有很多人在询问如何使用TFS API覆盖门控签入.但是一个非常不同的问题是:如果我真的以编程方式执行门控签入怎么办?如何在TFS API中触发此操作?

我想做的是:

  1. 执行一组挂起的更改的正常签入操作
  2. 接收有关已启动的gated构建的信息
  3. 订阅该构建的完成事件,或者轮询构建直到它完成.
  4. 如果构建成功,则继续,并提交更改(如果可能,获取生成的更改集)
  5. 如果构建不成功则停止,并报告错误.

我找不到任何回答这个问题的东西; 也许这是一个边缘情况,我是唯一一个疯狂到想要这样做的人.也就是说,我对此的需求是合法的.我唯一可以想到的是,我需要通过门控签入过程的低级功能:1)遍历构建定义,看看任何文件的路径是否与任何路径重合在任何门控版本中.2)如果存在交集,则创建挂起更改的shelveset 3)使用shelveset对门控定义的新构建进行排队4)查询构建定义并刷新信息,直到构建状态完成为止5)如果构建成功,取消搁置挂起的更改,然后使用覆盖签入.

但请注意,即使我执行了这些步骤,生成的构建也不会像门控构建那样.将发送策略覆盖通知,并且让某人知道实际执行构建的唯一方法是将此类信息包含在策略覆盖注释中.是否有更直接的方法来使它看起来像任何其他门控构建?

tfs tfs-sdk gated-checkin

3
推荐指数
1
解决办法
1554
查看次数