自定义资源:每次都可以重新应用设置吗?

时间:2014-09-05 16:40:07

标签: powershell dsc

我最近有一些创建自定义DSC资源的机会,我无法验证配置是否已经应用。两个例子是:

  • 使用用户名/密码设置应用程序服务帐户。我无法读取密码以验证其设置是否正确。
  • 将帐户的访问权限添加到RSA密钥容器(通过aspnet_regiis -pa)。

虽然我可能会遗漏一些有助于这些特定情况的内容......我仍然有一个普遍的问题:每次应用DSC配置时是否可以重新应用设置?换句话说,让Test-TargetResource始终返回$false ...

MSDN documentation说:

  

在序列中多次调用Set-TargetResource函数   具有相同参数值始终等效于调用它   一次。

...所以重新申请似乎没问题。它可能只是浪费了一点性能。

1 个答案:

答案 0 :(得分:1)

关于手头的问题

我认为一般情况下,如你所推测的那样,总是适用,但当然总是要注意任何副作用。

例如,是否存在有效的密码策略强制帐户密码每N天重置一次?如果是这样,你实际上可能无意中使该政策无效(这只是一个例子;实际上,当你仔细观察我的例子时,它可能没有意义。)

很明显,如果您的更改需要重新启动才能生效,那么您不希望始终进行设置,因为您不会强制重启,因此也不会设置状态,或者您不会总是重新启动!

记录/监控

请注意,如果您正在对系统状态和漂移进行任何类型的监控,那么您可能会遇到此方法的问题。我还没有亲自到过那里,但我可以看到如何让机器显示为"而不是配置"每30至60分钟就会出现问题。

您的情景

在测试用户密码方面,我相信你可以做到这一点。如果您正在设置密码,则必须已经嵌入密码,因此请尝试使用您知道的密码作为用户进行身份验证。

至于RSA的事情......我不熟悉这个场景,所以我不知道。