Introdução ao módulo SecretStore
Os módulos SecretManagement e SecretStore estão disponíveis no Galeria do PowerShell e podem ser instalados com comandos do PowerShellGet.
# Install with PowerShellGet 2.x
Install-Module Microsoft.PowerShell.SecretManagement
Install-Module Microsoft.PowerShell.SecretStore
# Install with PSResourceGet 1.x
Install-PSResource Microsoft.PowerShell.SecretManagement
Install-PSResource Microsoft.PowerShell.SecretStore
Depois de instalar os módulos, pode carregar os módulos e começar a utilizar ou criar novos segredos.
Import-Module Microsoft.PowerShell.SecretManagement
Import-Module Microsoft.PowerShell.SecretStore
Criar um cofre e adicionar um segredo
Primeiro, tem de registar o cofre. O parâmetro Nome é um nome amigável e pode ser qualquer cadeia válida.
Register-SecretVault -Name SecretStore -ModuleName Microsoft.PowerShell.SecretStore -DefaultVault
O parâmetro DefaultVault torna este o cofre predefinido.
Agora pode criar um segredo.
Set-Secret -Name TestSecret -Secret "TestSecretPassword"
Este exemplo transmite uma cadeia de texto simples para o valor do segredo. O valor secreto pode ser um dos cinco tipos suportados:
- byte[]
- String
- SecureString
- PSCredential
- Hashtable
Na primeira vez que aceder ao cofre, tem de fornecer uma palavra-passe para o novo cofre. Esta palavra-passe é utilizada para bloquear e desbloquear o cofre.
Vault SecretStore requires a password.
Enter password:
********
Enter password again for verification:
********
Execute Get-Secret
para obter o segredo. Utilizar o comutador AsPlainText devolve o segredo como uma cadeia não encriptada.
PS> Get-Secret -Name TestSecret -AsPlainText
TestSecretPassword
Para obter a lista de todos os seus segredos, pode executar:
PS> Get-SecretInfo
Name Type VaultName
---- ---- ---------
TestSecret String SecretStore
Notas
Quando executa Set-Secret
com o parâmetro Nome para especificar o nome do segredo, o cmdlet chama GetSecret()
que é implementado pela extensão do cofre. Set-Secret
transmite o nome conforme fornecido pelo utilizador. A extensão do cofre procura o segredo por esse nome. Se GetGecret()
devolver uma correspondência, Set-Secret
substitui o segredo, a menos que utilize o parâmetro NoClobber . A extensão do cofre escreve sempre as informações secretas que recebe.
Cabe à implementação da extensão do cofre decidir se deve ou não utilizar uma comparação sensível a maiúsculas e minúsculas no nome. Por exemplo, os nomes de segredos no cofre de extensões Microsoft.PowerShell.SecretStore não são sensíveis a maiúsculas e minúsculas. Se o nome que transmitir Set-Secret
for diferente apenas por caso com o nome de um segredo existente num cofre secretStore, o nome será substituído pelo novo valor que forneceu.
Ligações relacionadas
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários