对包含在另一个脚本中的 Powershell 脚本进行签名?

对包含在另一个脚本中的 Powershell 脚本进行签名?

我是否需要对.ps1Powershell 配置文件中包含的每个 Powershell 脚本(外部文件)进行签名?如果是这样,我可以使用相同的证书对其进行签名吗(或者这是最糟糕的做法)?

只是为了清楚起见,如果脚本发生变化,我只需要重新签署发生变化的脚本,对吗?因为脚本的内容是通过某种校验和以某种方式编码到签名中的。

答案1

我是否需要对 Powershell 配置文件中包含的每个 Powershell 脚本(外部 .ps1 文件)进行签名?

假设执行策略为“AllSigned”或“RemoteSigned”,那么是的,您将需要签署所有脚本。通过您的配置文件导入外部脚本与执行(或获取)PS1 文件相同。

如果是这样,我可以使用相同的证书对其进行签名吗(或者这是最糟糕的做法)?

你应该签署全部脚本使用相同的证书创建——你的签名证书。颁发给您的签名证书是用于识别作为签名剧本的发布者。

并且为了清楚起见,如果脚本发生变化,我只需要重新签署发生变化的脚本,对吗?

您只需要在以下情况下重新签署脚本:修改了脚本。您应该使用您的签名证书重新签名。如果您发现脚本在您不知情的情况下被修改,您应该确定修改来源以确定是否是预期的。

相关内容