Compartilhar via


Certificate Provider

Nome do provedor

Certificate

Unidades

Cert:

Descrição resumida

Fornece acesso aos repositórios de certificado X.509 e aos certificados do Windows PowerShell.

Descrição detalhada

A estratégia de segurança do Windows PowerShell dá suporte ao uso de assinaturas Authenticode para assinar scripts que usam certificados de chave pública digitais codificados com X.509. Os recursos de assinatura do Windows PowerShell não foram projetados para serem completos, mas eles permitem que os usuários assinem scripts e habilitem o Windows PowerShell para reconhecer scripts assinados e não assinados e determinar se os scripts se originam na Internet.

O provedor Certificate do Windows PowerShell permite navegar pelo namespace de certificado e exibir os repositórios de certificados e os certificados. Ele também permite copiar, mover e excluir certificados e repositórios de certificados, bem como abrir o snap-in Certificados para o MMC (Console de Gerenciamento Microsoft).

O provedor Certificate expõe o namespace do certificado como a unidade Cert: no Windows PowerShell. A unidade Cert: possui os três níveis a seguir:

-- Locais de repositório (Microsoft.PowerShell.Commands.X509StoreLocation), que são contêineres de alto nível que agrupa os certificados do usuário atual e de todos os usuários. Cada sistema tem um local de repositório CurrentUser e LocalMachine (todos os usuários).

-- Repositórios de certificados (System.Security.Cryptography.X509Certificates.X509Store), que são repositórios físicos em que os certificados são salvos e gerenciados.

-- Certificados X.509 (System.Security.Cryptography.X509Certificates.X509Certificate2), em que cada um representa um certificado X.509 no computador. Os certificados são identificados por suas impressões digitais.

O provedor Certificate do Windows PowerShell dá suporte aos cmdlets Set-Location, Get-Location, Get-Item, Get-ChildItem and Invoke-Item.

Além disso, o snap-in de Segurança do Windows PowerShell (Microsoft.PowerShell.Security), que inclui o provedor Certificate, também inclui snap-ins para obter e definir assinaturas Authenticode e para obter certificados. Para obter uma lista de cmdlets no snap-in Segurança, digite "Get-Command -module *security".

Exemplos

-------------------------- EXEMPLO 1 --------------------------

Esse comando usa o cmdlet Set-Location para alterar o local atual para a unidade Cert:.

set-location cert:

-------------------------- EXEMPLO 2 --------------------------

Esse comando usa o comando Set-Location para alterar o local atual para o repositório de certificado Root no local de repositório LocalMachine. Use uma barra invertida (\) ou uma barra (/) para indicar um nível da unidade Cert:.

set-location -path LocalMachine\Root

Se você não estiver em uma unidade Cert:, inicie o caminho com o nome da unidade.

Exibindo o conteúdo da unidade Cert:

-------------------------- EXEMPLO 1 --------------------------

Esse comando usa o cmdlet Get-ChildItem para exibir os repositórios de certificado no local de repositório de certificado CurrentUser.

get-childitem -path cert:\CurrentUser

Se você já estiver na unidade Cert:, poderá omitir o nome da unidade.

-------------------------- EXEMPLO 2 --------------------------

Esse comando usa o cmdlet Get-ChildItem para exibir os certificados no repositório de certificado My.

get-childitem -path cert:\CurrentUser\My

Se você já estiver na unidade Cert:, poderá omitir o nome da unidade.

-------------------------- EXEMPLO 3 --------------------------

Esse comando usa o cmdlet Get-Item para obter o repositório de certificado "My" e o parâmetro Property de Format-List com um caractere curinga (*) para exibir todas as propriedades do repositório.

get-item -path cert:\CurrentUser\My | format-list *

-------------------------- EXEMPLO 4 --------------------------

Esse comando obtém um certificado e exibe todas as suas propriedades. Ele usa o cmdlet Get-ChildItem para obter o certificado e o parâmetro Property de Format-List com um caractere curinga (*) para exibir todas as propriedades do certificado.

O certificado é identificado por sua impressão digital.

get-childitem -path cert:\CurrentUser\my\6B8223358119BB08840DEE50FD8AF9EA776CE66B | format-list -property *

-------------------------- EXEMPLO 5 --------------------------

Esse comando usa o cmdlet Get-ChildItem para obter todos os certificados no computador e o parâmetro dinâmico CodeSigningCert correspondente para obter apenas os certificados que possuem autoridade de assinatura de código.

get-childitem -path * -codesigningcert -recurse

Abrindo o snap-in de certificados do MMC

-------------------------- EXEMPLO 1 --------------------------

Esse comando abre o snap-in de Certificados do MMC para gerenciar o certificado especificado.

invoke item cert:\CurrentUser\my\6B8223358119BB08840DEE50FD8AF9EA776CE66B

Parâmetros dinâmicos

Parâmetros dinâmicos são parâmetros de cmdlets, que são adicionados por um provedor do Windows PowerShell e estão disponíveis apenas quando o cmdlet está sendo usado na unidade habilitada pelo provedor.

CodeSigningCert <System.Management.Automation.SwitchParameter>

Obtém apenas aqueles certificados com autoridade de assinatura de código.

Cmdlets com suporte

Consulte também

Conceitos

about_Providers
about_Signing
Get-AuthenticodeSignature
Set-AuthenticodeSignature
Get-PfxCertificate