如何safeprotecture服务本金秘籍

问题描述 投票:-1回答:1

我的部署任务使用PowerShell脚本,其中使用服务委托人连接到Azure KeyVault的拉动秘密。秘密(密码)在PowerShell脚本的代码中存储为纯文本。也许有其他的解决方案,如何最小化token的查看。

我也使用PowerShell inline模式(不是单独的脚本),在部署任务中使用Azure DevOps Secret Variable,但这个解决方案很难支持(脚本有几个不同的操作,所以你必须保留多个版本的脚本)。

脚本存储在Git仓库中,任何有访问权限的人都能看到这个秘密,并获得其他密钥的访问权限。也许我没有正确理解这个概念,但如果密钥不能存储在代码中,那么我应该怎么做?

azure powershell azure-devops azure-pipelines-release-pipeline azure-keyvault
1个回答
0
投票

我devops,你可以使用变量组,并定义变量是直接从选定的keyvault拉(如果你选择的服务委托人有读列表访问的KV 链接.

这意味着你可以在keyvault中定义所有的秘密,并且它们会在你的yaml中的任何任务发生之前被提取。为了能够在脚本中使用它们,你可以将它们定义为一个 env 变量或脚本的参数,只需引用 $env:variable 或 $variable,而不是将秘密硬编码在脚本中。

© www.soinside.com 2019 - 2024. All rights reserved.