SecretManagement 模块通过提供一组与机密保管库交互的通用 cmdlet 来帮助用户管理机密。 SecretManagement 提供了一个可扩展的模型,可以在其中注册本地和远程保管库以供使用。 这允许您将访问和管理保管库的特定详细信息与需要机密的脚本分开。
由于 SecretManagement 是 PowerShell 中的模块抽象层,因此一旦注册了扩展保管库,它就会变得很有用。 任何保管库的安全性、可用性和特殊性之间都需要权衡,因此用户需要配置 SecretManagement 以与最符合其要求的保管库集成,并评估他们信任非 Microsoft 开发的任何保管库扩展的程度。
SecretManagement 不会对扩展保管库施加身份验证要求。 这允许每个单独的保管库提供自己的机制。 有些可能需要密码或令牌,而另一些可能需要利用当前帐户凭据。
SecretManagement 支持以下关键方案:
- 在不知道所有用户的本地保管库的情况下在整个组织中共享脚本
- 在本地、测试和生产环境中运行部署脚本,只需更改单个参数 Vault
- 更改身份验证方法的后端以满足特定的安全或组织需求,而无需更新所有脚本
扩展库生态系统
安装和注册扩展保管库后,SecretManagement 将变得很有用。 扩展保管库是具有特定结构的 PowerShell 模块,提供 SecretManagement 模块与任何本地或远程机密保管库之间的连接。
SecretStore 是一个实现本地保管库的跨平台扩展模块。 SecretStore 保管库将当前用户的机密本地存储在文件中。 它使用 .NET Core 加密 API 来加密文件内容。 此扩展保管库适用于支持 PowerShell 7 的所有平台。
发现和安装 Vault 扩展
若要查找扩展保管库模块,请在 PowerShell 库中搜索 SecretManagement 标记。
一些可用的社区保管库扩展:
社区反馈和支持
社区反馈对于这些模块的迭代开发至关重要。 若要提交问题或获得对 SecretManagement 界面或保管库开发体验的支持,请使用 SecretManagement 存储库。 对于 SecretStore 模块的问题,请使用 SecretStore 存储库。