使用证书对PowerShell脚本进行签名

简介:

当设置系统只接受经过证书签名的powershell脚本运行的策略,我们就需要给脚本进行签名;

(1)在CA中申请一个给代码签名的证书;(具体可在网上搜索方法)

image

(2)将证书导入到本地的操作系统中;(具体可在网上搜索方法)

证书导入后,可在证书管理台中见到;

image

(3)查看并测试当前的脚本运行策略;

A.查看当前Powershell脚本执行的策略为AllSigned;

B.运行一个测试的脚本,提示脚本没有经过签名,拒绝运行;

image

(4)使用"ls cert:\current\my”命令查看正式的Subject; (如果有不明白Cert:的意思可以参考“get-psdrive”命令)

image

(5)使用“$cert=ls cert:\current\my”命令将证书赋给变量$cert;

然后使用“set-authenticodeSignature .\test.ps1”命令给当前路径下的脚本test.ps1经行签名;

当见到Status是“Valid”,即表示签名成功;

image

(6)重复(3)的步骤;

A.查看当前的运行策略为AllSigned;

B.运行当前路径下的脚本,已经成功运行;




本文转自 bannerpei 51CTO博客,原文链接:http://blog.51cto.com/281816327/1409908,如需转载请自行联系原作者

相关文章
|
6天前
|
存储 安全 Windows
PowerShell系列(六):PowerShell脚本执行策略梳理
【2月更文挑战第1篇】PowerShell 脚本执行策略用于控制何时以及何种方式执行 PowerShell 脚
|
6月前
|
安全 API
Powershell脚本分析
Powershell脚本分析
|
6天前
|
运维 开发工具 Windows
PowerShell系列(五):PowerShell通过脚本方式运行笔记
【1月更文挑战第7天】方便迁移,比如在之前工作经验积累下来的运维脚本,可以保存下来。如果业务场景用的到的话,直接文件拷贝过来就可以运行。
|
6天前
|
前端开发 微服务 Windows
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
PowerShell 命令窗口执行 pnpm 命令报错 无法加载文件 pnpm.ps1,因为在此系统上禁止运行脚本
|
8月前
|
SQL 数据库
PowerShell 脚本必备命令
PowerShell 脚本必备命令
|
Windows
powershell配置anaconda及解决【无法加载文件C:\Users\xxx\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本】的问题
powershell配置anaconda及解决【无法加载文件C:\Users\xxx\Documents\WindowsPowerShell\profile.ps1,因为在此系统上禁止运行脚本】的问题
1689 0
|
9月前
|
C# C++
PowerShell脚本中实现限时读取用户输入
突然想到之前倒腾PowerShell的时候实现了一个限时读取用户输入的函数
149 0
|
资源调度
关于vscode,powershell运行yarn报错禁止运行脚本解决办法
关于vscode,powershell运行yarn报错禁止运行脚本解决办法
157 0
关于vscode,powershell运行yarn报错禁止运行脚本解决办法
|
资源调度
PowerShell yarn : 无法加载文件 C:\Users\Admin\AppData\Roaming\npm\yarn.ps1,因为在此系统因为在此系统上禁止运行脚本。
PowerShell yarn : 无法加载文件 C:\Users\Admin\AppData\Roaming\npm\yarn.ps1,因为在此系统因为在此系统上禁止运行脚本。
183 0
PowerShell yarn : 无法加载文件 C:\Users\Admin\AppData\Roaming\npm\yarn.ps1,因为在此系统因为在此系统上禁止运行脚本。