Proveedor de certificadosCertificate Provider

Nombre del proveedorProvider name

CertificadoCertificate

UnidadesDrives

Cert:

FuncionalidadesCapabilities

ShouldProcessShouldProcess

Descripción breveShort description

Proporciona acceso a los almacenes de certificados X. 509 y a los certificados en PowerShell.Provides access to X.509 certificate stores and certificates in PowerShell.

Descripción detalladaDetailed description

El proveedor de certificados de PowerShell permite obtener, agregar, cambiar, borrar y eliminar certificados y almacenes de certificados en PowerShell.The PowerShell Certificate provider lets you get, add, change, clear, and delete certificates and certificate stores in PowerShell.

La unidad de certificado es un espacio de nombres jerárquico que contiene los almacenes de certificados y los certificados del equipo.The Certificate drive is a hierarchical namespace containing the certificate stores and certificates on your computer.

El proveedor de certificados es compatible con los siguientes cmdlets, que se describen en este artículo.The Certificate provider supports the following cmdlets, which are covered in this article.

Tipos expuestos por este proveedorTypes exposed by this provider

La unidad de certificado expone los siguientes tipos.The Certificate drive exposes the following types.

  • Ubicaciones de almacenamiento (Microsoft. PowerShell. Commands. X509StoreLocation), que son contenedores de alto nivel que agrupan los certificados para el usuario actual y para todos los usuarios.Store locations (Microsoft.PowerShell.Commands.X509StoreLocation), which are high-level containers that group the certificates for the current user and for all users. Cada sistema tiene una ubicación del almacén CurrentUser y LocalMachine (todos los usuarios).Each system has a CurrentUser and LocalMachine (all users) store location.

  • Almacenes de certificados (System. Security. Cryptography. X509Certificates. X509Store), que son almacenes físicos en los que se guardan y administran los certificados.Certificates stores (System.Security.Cryptography.X509Certificates.X509Store), which are physical stores in which certificates are saved and managed.

  • Certificados x. 509 System. Security. Cryptography. X509Certificates. X509Certificate2 , cada uno de los cuales representa un certificado X. 509 en el equipo.X.509 System.Security.Cryptography.X509Certificates.X509Certificate2 certificates, each of which represent an X.509 certificate on the computer. Los certificados se identifican por sus huellas digitales.Certificates are identified by their thumbprints.

El proveedor de certificados expone el espacio de nombres del certificado como la Cert: unidad en PowerShell.The Certificate provider exposes the certificate namespace as the Cert: drive in PowerShell. Este comando usa el Set-Location comando para cambiar la ubicación actual al almacén de certificados raíz en la ubicación del almacén LocalMachine.This command uses the Set-Location command to change the current location to the Root certificate store in the LocalMachine store location. Use una barra diagonal inversa ( \ ) o una barra diagonal (/) para indicar un nivel de la Cert: unidad.Use a backslash (\) or a forward slash (/) to indicate a level of the Cert: drive.

Set-Location Cert:

También puede trabajar con el proveedor de certificados desde cualquier otra unidad de PowerShell.You can also work with the certificate provider from any other PowerShell drive. Para hacer referencia a un alias desde otra ubicación, use el Cert: nombre de la unidad en la ruta de acceso.To reference an alias from another location, use the Cert: drive name in the path.

PS Cert:\> Set-Location -Path LocalMachine\Root

Para volver a una unidad del sistema de archivos, escriba el nombre de la unidad.To return to a file system drive, type the drive name. Por ejemplo, escriba:For example, type:

Set-Location C:

Nota

PowerShell usa alias para que le resulte más fácil trabajar con rutas de acceso del proveedor.PowerShell uses aliases to allow you a familiar way to work with provider paths. Los comandos como dir y ls son ahora alias de Get-childitem, cd es un alias para set-Location.Commands such as dir and ls are now aliases for Get-ChildItem, cd is an alias for Set-Location. y pwd es un alias de Get-Location.and pwd is an alias for Get-Location.

Mostrar el contenido de la unidad CERT:Displaying the Contents of the Cert: drive

Este comando usa el Get-ChildItem cmdlet para mostrar los almacenes de certificados en la ubicación del almacén de certificados CurrentUser.This command uses the Get-ChildItem cmdlet to display the certificate stores in the CurrentUser certificate store location.

Si no está en la Cert: unidad, use una ruta de acceso absoluta.If you are not in the Cert: drive, use an absolute path.

PS Cert:\CurrentUser\> Get-ChildItem

Visualización de las propiedades del certificado en la unidad CERT:Displaying certificate properties within the Cert: drive

Este ejemplo obtiene un certificado con Get-Item y lo almacena en una variable.This example gets a certificate with Get-Item and stores it in a variable. En el ejemplo se muestran las nuevas propiedades del script de certificado ( DnsNameList , EnhancedKeyUsageList , SendAsTrustedIssuer ) mediante Select-Object .The example shows the new certificate script properties ( DnsNameList , EnhancedKeyUsageList , SendAsTrustedIssuer ) using Select-Object.

$c = Get-Item cert:\LocalMachine\My\52A149D0393CE8A8D4AF0B172ED667A9E3A1F44E
$c | Format-List DnsNameList, EnhancedKeyUsageList, SendAsTrustedIssuer
DnsNameList          : {SERVER01.contoso.com}
EnhancedKeyUsageList : {WiFi-Machine (1.3.6.1.4.1.311.42.2.6),
                       Client Authentication (1.3.6.1.5.5.7.3.2)}
SendAsTrustedIssuer  : False

Buscar todos los certificados de codiseñoFind all CodeSigning certificates

Este comando usa los parámetros CodeSigningCert y RECURSE del Get-ChildItem cmdlet para obtener todos los certificados en el equipo que tienen autoridad de firma de código.This command uses the CodeSigningCert and Recurse parameters of the Get-ChildItem cmdlet to get all of the certificates on the computer that have code-signing authority.

Get-ChildItem -Path cert: -CodeSigningCert -Recurse

Buscar certificados expiradosFind expired certificates

Este comando usa el parámetro ExpiringInDays del Get-ChildItem cmdlet para obtener los certificados que expirarán en los próximos 30 días.This command uses the ExpiringInDays parameter of the Get-ChildItem cmdlet to get certificates that will expire within the next 30 days.

Get-ChildItem -Path cert:\LocalMachine\WebHosting -ExpiringInDays 30

Buscar certificados SSL de servidorFind Server SSL Certificates

Este comando usa el parámetro SSLServerAuthentication del Get-ChildItem cmdlet para obtener todos los certificados SSL de servidor de los almacenes My y WebHosting.This command uses the SSLServerAuthentication parameter of the Get-ChildItem cmdlet to get all Server SSL Certificates in the My and WebHosting stores.

Get-ChildItem -Path cert:\LocalMachine\My, cert:\LocalMachine\WebHosting `
  -SSLServerAuthentication

Buscar certificados expirados en equipos remotosFind expired certificates on remote computers

Este comando usa el Invoke-Command cmdlet para ejecutar un Get-ChildItem comando en los equipos Srv01 y Srv02.This command uses the Invoke-Command cmdlet to run a Get-ChildItem command on the Srv01 and Srv02 computers. Un valor de cero (0) en el parámetro ExpiringInDays obtiene los certificados de los equipos Srv01 y Srv02 que han expirado.A value of zero (0) in the ExpiringInDays parameter gets certificates on the Srv01 and Srv02 computers that have expired.

Invoke-Command -ComputerName Srv01, Srv02 {Get-ChildItem -Path cert:\* `
  -Recurse -ExpiringInDays 0}

Combinación de filtros para buscar un conjunto específico de certificadosCombining filters to find a specific set of certificates

Este comando obtiene todos los certificados de la ubicación del almacén LocalMachine que tienen los siguientes atributos:This command gets all certificates in the LocalMachine store location that have the following attributes:

  • "fabrikam" en su nombre DNS"fabrikam" in their DNS name
  • "Autenticación de cliente" en su EKU"Client Authentication" in their EKU
  • un valor de $true para la propiedad SendAsTrustedIssuera value of $true for the SendAsTrustedIssuer property
  • no expire en los próximos 30 días.do not expire within the next 30 days.

La propiedad Noolaetaer almacena la fecha de expiración del certificado.The NotAfter property stores the certificate expiration date.

[DateTime] $ValidThrough = (Get-Date) + (New-TimeSpan -Days 30)
Get-ChildItem -Path cert:\* -Recurse -DNSName "*fabrikam*" `
  -EKU "*Client Authentication*" | Where-Object {
                                     $_.SendAsTrustedIssuer -and `
                                     $_.NotAfter -gt $ValidThrough
                                   }

Abrir el complemento MMC CertificadosOpening the Certificates MMC Snap-in

El Invoke-Item cmdlet usará la aplicación predeterminada para abrir una ruta de acceso que especifique.The Invoke-Item cmdlet will use the default application to open a path you specify. En el caso de los certificados, la aplicación predeterminada es el complemento MMC certificados.For certificates, the default application is the Certificates MMC snap-in.

Este comando abre el complemento MMC Certificados para administrar el certificado especificado.This command opens the Certificates MMC snap-in to manage the specified certificate.

Invoke-Item cert:\CurrentUser\my\6B8223358119BB08840DEE50FD8AF9EA776CE66B

Copiar certificadosCopying Certificates

El proveedor de certificados no admite la copia de certificados.Copying certificates is not supported by the Certificate provider. Al intentar copiar un certificado, verá este error.When you attempt to copy a certificate, you see this error.

$path = "Cert:\LocalMachine\Root\E2C0F6662D3C569705B4B31FE2CBF3434094B254"
PS Cert:\LocalMachine\> Copy-Item -Path $path -Destination .\CA\
Copy-Item : Provider operation stopped because the provider does not support
this operation.
At line:1 char:1
+ Copy-Item -Path $path -Destination .\CA\
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotImplemented: (:) [Copy-Item],
                              PSNotSupportedException
    + FullyQualifiedErrorId : NotSupported,
                              Microsoft.PowerShell.Commands.CopyItemCommand

Mover certificadosMoving Certificates

Trasladar todos los certificados de autenticación de servidor SSL al almacén webhostingMove all SSL Server authentication certs to the WebHosting store

Este comando usa el Move-Item cmdlet para trasladar un certificado del almacén My al almacén webhosting.This command uses the Move-Item cmdlet to move a certificate from the My store to the WebHosting store.

Move-Item no moverá los almacenes de certificados y no moverá los certificados a una ubicación de almacén diferente, como mover un certificado de LocalMachine a CurrentUser.Move-Item will not move certificate stores and it will not move certificates to a different store location, such as moving a certificate from LocalMachine to CurrentUser. El Move-Item cmdlet mueve certificados, pero no mueve claves privadas.The Move-Item cmdlet moves certificates, but it does not move private keys.

Este comando usa el parámetro SSLServerAuthentication del Get-ChildItem cmdlet para obtener certificados de autenticación de servidor SSL en el almacén de certificados My.This command uses the SSLServerAuthentication parameter of the Get-ChildItem cmdlet to get SSL server authentication certificates in the MY certificate store.

Los certificados devueltos se canalizan al Move-Item cmdlet, que mueve los certificados al almacén webhosting.The returned certificates are piped to the Move-Item cmdlet, which moves the certificates to the WebHosting store.

Get-ChildItem cert:\LocalMachine\My -SSLServerAuthentication | Move-Item `
  -Destination cert:\LocalMachine\WebHosting

Eliminar certificados y claves privadasDeleting Certificates and Private Keys

El Remove-Item cmdlet quitará los certificados que especifique.The Remove-Item cmdlet will remove certificates that you specify. El -DeleteKey parámetro Dynamic elimina la clave privada.The -DeleteKey dynamic parameter deletes the private key.

Eliminar un certificado del almacén de CADelete a Certificate from the CA store

Este comando elimina un certificado del almacén de certificados CA, pero deja intacta la clave privada asociada.This command deletes a certificate from the CA certificate store, but leaves the associated private key intact.

En la Cert: unidad, el Remove-Item cmdlet solo admite los parámetros DeleteKey , path , Whatif y CONFIRM .In the Cert: drive, the Remove-Item cmdlet supports only the DeleteKey , Path , WhatIf , and Confirm parameters. Todos los demás parámetros se omiten.All other parameters are ignored.

Remove-Item cert:\LocalMachine\CA\5DDC44652E62BF9AA1116DC41DE44AB47C87BDD0

Eliminar un certificado mediante un carácter comodín en el nombre DNSDelete a Certificate using a wildcards in the DNS name

Este comando elimina todos los certificados con un nombre DNS que contenga "Fabrikam".This command deletes all certificates that have a DNS name that contains "Fabrikam". Usa el parámetro DNSName del Get-ChildItem cmdlet para obtener los certificados y el Remove-Item cmdlet para eliminarlos.It uses the DNSName parameter of the Get-ChildItem cmdlet to get the certificates and the Remove-Item cmdlet to delete them.

Get-ChildItem -Path cert:\LocalMachine -DnsName *Fabrikam* | Remove-Item

Eliminar claves privadas de un equipo remotoDelete private keys from a remote computer

Esta serie de comandos permite la delegación y, a continuación, elimina el certificado y la clave privada asociada en un equipo remoto.This series of commands enables delegation and then deletes the certificate and associated private key on a remote computer. Para eliminar una clave privada en un equipo remoto, debe utilizar credenciales delegadas.To delete a private key on a remote computer, you must use delegated credentials.

Use el Enable-WSManCredSSP cmdlet para habilitar la autenticación del proveedor de servicios de seguridad de credenciales (CredSSP) en un cliente en el equipo remoto S1.Use the Enable-WSManCredSSP cmdlet to enable Credential Security Service Provider (CredSSP) authentication on a client on the S1 remote computer. CredSSP permite la autenticación delegada.CredSSP permits delegated authentication.

Enable-WSManCredSSP -Role Client -DelegateComputer S1

Use el Connect-WSMan cmdlet para conectar el equipo S1 al servicio WinRM en el equipo local.Use the Connect-WSMan cmdlet to connect the S1 computer to the WinRM service on the local computer. Cuando se completa este comando, el equipo S1 aparece en la WSMan: unidad local en PowerShell.When this command completes, the S1 computer appears in the local WSMan: drive in PowerShell.

Connect-WSMan -ComputerName S1 -Credential Domain01\Admin01

Ahora, puede usar el cmdlet Set-Item en la unidad WSMan: para habilitar el atributo CredSSP para el servicio WinRM.Now, you can use the Set-Item cmdlet in the WSMan: drive to enable the CredSSP attribute for the WinRM service.

Set-Item -Path WSMan:\S1\Service\Auth\CredSSP -Value $true

Inicie una sesión remota en el equipo S1 con el New-PSSession cmdlet y especifique la autenticación CredSSP.Start a remote session on the s1 computer using the New-PSSession cmdlet, and specify CredSSP authentication. Guarda la sesión en la $s variable.Saves the session in the $s variable.

$s  = New-PSSession S1 -Authentication CredSSP -Credential Domain01\Admin01

Por último, use el Invoke-Command cmdlet para ejecutar un Remove-Item comando en la sesión en la $s variable.Finally, use the Invoke-Command cmdlet to run a Remove-Item command in the session in the $s variable. El Remove-Item comando usa el parámetro DeleteKey para quitar la clave privada junto con el certificado especificado.The Remove-Item command uses the DeleteKey parameter to remove the private key along with the specified certificate.

Invoke-Command -Session $s { Remove-Item `
  -Path cert:\LocalMachine\My\D2D38EBA60CAA1C12055A2E1C83B15AD450110C2 `
  -DeleteKey
  }

Eliminar certificados expiradosDelete expired Certificates

Este comando usa el parámetro ExpiringInDays del Get-ChildItem cmdlet con un valor de 0 para obtener los certificados del almacén webhosting que han expirado.This command uses the ExpiringInDays parameter of the Get-ChildItem cmdlet with a value of 0 to get certificates in the WebHosting store that have expired.

La variable que contiene los certificados devueltos se canaliza al Remove-Item cmdlet, que los elimina.The variable containing the returned certificates is piped to the Remove-Item cmdlet, which deletes them. El comando usa el parámetro DeleteKey para eliminar la clave privada junto con el certificado.The command uses the DeleteKey parameter to delete the private key along with the certificate.

$expired = Get-ChildItem cert:\LocalMachine\WebHosting -ExpiringInDays 0
$expired | Remove-Item -DeleteKey

Crear certificadosCreating Certificates

El New-Item cmdlet no crea nuevos certificados en el proveedor de certificados .The New-Item cmdlet does not create new certificates in the Certificate provider. Use el cmdlet New-SelfSignedCertificate para crear un certificado con fines de prueba.Use the New-SelfSignedCertificate cmdlet to create a certificate for testing purposes.

Crear almacenes de certificadosCreating Certificate Stores

En la unidad CERT:, el New-Item cmdlet crea almacenes de certificados en la ubicación del almacén LocalMachine.In the Cert: drive, the New-Item cmdlet creates certificate stores in the LocalMachine store location. Admite los parámetros Name , path , Whatif y CONFIRM .It supports the Name , Path , WhatIf , and Confirm parameters. Todos los demás parámetros se omiten.All other parameters are ignored. El comando devuelve un System. Security. Cryptography. X509Certificates. X509Store que representa el nuevo almacén de certificados.The command returns a System.Security.Cryptography.X509Certificates.X509Store that represents the new certificate store.

Este comando crea un nuevo almacén de certificados denominado "CustomStore" en la ubicación del almacén LocalMachine.This command creates a new certificate store named "CustomStore" in the LocalMachine store location.

New-Item -Path cert:\LocalMachine\CustomStore

Crear un nuevo almacén de certificados en un equipo remotoCreate a new certificate store on a remote computer

Este comando crea un nuevo almacén de certificados denominado "HostingStore" en la ubicación del almacén LocalMachine en el equipo Server01.This command creates a new certificate store named "HostingStore" in the LocalMachine store location on the Server01 computer.

El comando usa el Invoke-Command cmdlet para ejecutar un New-Item comando en el equipo Server01.The command uses the Invoke-Command cmdlet to run a New-Item command on the Server01 computer. El comando devuelve un System. Security. Cryptography. X509Certificates. X509Store que representa el nuevo almacén de certificados.The command returns a System.Security.Cryptography.X509Certificates.X509Store that represents the new certificate store.

Invoke-Command { New-Item -Path cert:\LocalMachine\CustomStore } `
  -ComputerName Server01

Creación de certificados de cliente para WS-ManCreating Client Certificates for WS-Man

Este comando crea la entrada ClientCertificate que puede usar el cliente de WS-Management .This command creates ClientCertificate entry that can be used by the WS-Management client. El nuevo objeto ClientCertificate aparecerá en el directorio ClientCertificate como "ClientCertificate_1234567890".The new ClientCertificate will show up under the ClientCertificate directory as "ClientCertificate_1234567890". Todos los parámetros son obligatorios.All of the parameters are mandatory. El emisor debe ser la huella digital del certificado de emisores.The Issuer needs to be thumbprint of the issuers certificate.

$cred = Get-Credential
New-Item -Path WSMan:\localhost\ClientCertificate `
         -Issuer 1b3fd224d66c6413fe20d21e38b304226d192dfe `
         -URI wmicimv2/* -Credential $cred

Eliminar almacenes de certificadosDeleting Certificate Stores

Eliminar un almacén de certificados de un equipo remotoDelete a certificate store from a remote computer

Este comando usa el Invoke-Command cmdlet para ejecutar un Remove-Item comando en los equipos S1 y S2.This command uses the Invoke-Command cmdlet to run a Remove-Item command on the S1 and S2 computers. El Remove-Item comando incluye el parámetro RECURSE , que elimina los certificados en el almacén antes de eliminar el almacén.The Remove-Item command includes the Recurse parameter, which deletes the certificates in the store before it deletes the store.

Invoke-Command { Remove-Item -Path cert:\LocalMachine\TestStore -Recurse } `
  -ComputerName S1, S2

Parámetros dinámicosDynamic parameters

Los parámetros dinámicos son parámetros de cmdlet agregados por un proveedor de PowerShell y solo están disponibles cuando el cmdlet se usa en la unidad habilitada para el proveedor.Dynamic parameters are cmdlet parameters that are added by a PowerShell provider and are available only when the cmdlet is being used in the provider-enabled drive. Estos parámetros son válidos en todos los subdirectorios del proveedor de certificados, pero solo se aplican a los certificados.These parameters are valid in all subdirectories of the Certificate provider, but are effective only on certificates.

Nota

Los parámetros que realizan el filtrado en la EnhancedKeyUsageList propiedad también devuelven elementos con un EnhancedKeyUsageList valor de propiedad vacío.Parameters that perform filtering against the EnhancedKeyUsageList property also return items with an empty EnhancedKeyUsageList property value. Los certificados que tienen un EnhancedKeyUsageList vacío pueden utilizarse para todos los propósitos.Certificates that have an empty EnhancedKeyUsageList can be used for all purposes.

Los siguientes parámetros de proveedor de certificados se introdujeron en PowerShell 7,1.The following Certificate provider parameters were reintroduced in PowerShell 7.1.

  • DNSNameDNSName
  • DocumentEncryptionCertDocumentEncryptionCert
  • EKUEKU
  • ExpiringInDaysExpiringInDays
  • SSLServerAuthenticationSSLServerAuthentication

CodeSigningCert <System. Management. Automation. Parámetrodemodificador>CodeSigningCert <System.Management.Automation.SwitchParameter>

Cmdlets admitidosCmdlets supported

Este parámetro obtiene certificados que tienen "firma de código" en el valor de la propiedad EnhancedKeyUsageList .This parameter gets certificates that have "Code Signing" in their EnhancedKeyUsageList property value.

DeleteKey <System. Management. Automation. Parámetrodemodificador>DeleteKey <System.Management.Automation.SwitchParameter>

Cmdlets admitidosCmdlets supported

Este parámetro elimina la clave privada asociada cuando elimina el certificado.This parameter deletes the associated private key when it deletes the certificate.

Importante

Para eliminar una clave privada asociada a un certificado de usuario en el Cert:\CurrentUser almacén de un equipo remoto, debe usar credenciales delegadas.To delete a private key that is associated with a user certificate in the Cert:\CurrentUser store on a remote computer, you must use delegated credentials. El Invoke-Command cmdlet admite la delegación de credenciales mediante el parámetro CredSSP .The Invoke-Command cmdlet supports credential delegation using the CredSSP parameter. Debe considerar cualquier riesgo de seguridad antes Remove-Item de usar con Invoke-Command y la delegación de credenciales.You should consider any security risks before using Remove-Item with Invoke-Command and credential delegation.

Este parámetro se ha reintroducido en PowerShell 7,1This parameter was reintroduced in PowerShell 7.1

DnsName <Microsoft. PowerShell. Commands. DnsNameRepresentation>DnsName <Microsoft.PowerShell.Commands.DnsNameRepresentation>

Cmdlets admitidosCmdlets supported

Este parámetro obtiene certificados que tienen el patrón de nombre o nombre de dominio especificado en la propiedad DNSNameList del certificado.This parameter gets certificates that have the specified domain name or name pattern in the DNSNameList property of the certificate. El valor de este parámetro puede ser "Unicode" o "ASCII".The value of this parameter can either be "Unicode" or "ASCII". Los valores Punycode se convierten a Unicode.Punycode values are converted to Unicode. Se permiten caracteres comodín ( * ).Wildcard characters (*) are permitted.

Este parámetro se ha reintroducido en PowerShell 7,1This parameter was reintroduced in PowerShell 7.1

DocumentEncryptionCert <System. Management. Automation. Parámetrodemodificador>DocumentEncryptionCert <System.Management.Automation.SwitchParameter>

Cmdlets admitidosCmdlets supported

Este parámetro obtiene certificados que tienen "cifrado de documento" en el valor de la propiedad EnhancedKeyUsageList .This parameter gets certificates that have "Document Encryption" in their EnhancedKeyUsageList property value.

EKU <System. String>EKU <System.String>

Cmdlets admitidosCmdlets supported

Este parámetro obtiene certificados que tienen el texto o el patrón de texto especificados en la EnhancedKeyUsageList propiedad del certificado.This parameter gets certificates that have the specified text or text pattern in the EnhancedKeyUsageList property of the certificate. Se permiten caracteres comodín ( * ).Wildcard characters (*) are permitted. La EnhancedKeyUsageList propiedad contiene el nombre descriptivo y los campos OID del EKU.The EnhancedKeyUsageList property contains the friendly name and the OID fields of the EKU.

Este parámetro se ha reintroducido en PowerShell 7,1This parameter was reintroduced in PowerShell 7.1

ExpiringInDays <System. Int32>ExpiringInDays <System.Int32>

Cmdlets admitidosCmdlets supported

Este parámetro obtiene los certificados que expiran en el número especificado de días o antes.This parameter gets certificates that are expiring in or before the specified number of days. Un valor de 0 (cero) obtiene los certificados que han expirado.A value of 0 (zero) gets certificates that have expired.

Este parámetro se ha reintroducido en PowerShell 7,1This parameter was reintroduced in PowerShell 7.1

ItemType <String>ItemType <String>

Este parámetro permite especificar el tipo de elemento creado por New-Item .This parameter allows you to specify the type of item created by New-Item.

En una Certificate unidad, se permiten los siguientes valores:In a Certificate drive, the following values are allowed:

  • Proveedor de certificadosCertificate Provider
  • CertificadoCertificate
  • TiendaStore
  • StoreLocationStoreLocation

Cmdlets compatiblesCmdlets Supported

SSLServerAuthentication <System. Management. Automation. Parámetrodemodificador>SSLServerAuthentication <System.Management.Automation.SwitchParameter>

Cmdlets admitidosCmdlets supported

Obtiene solo los certificados de servidor para el hospedaje web de SSL.Gets only server certificates for SSL web hosting. Este parámetro obtiene certificados que tienen "autenticación de servidor" en su EnhancedKeyUsageList valor de propiedad.This parameter gets certificates that have "Server Authentication" in their EnhancedKeyUsageList property value.

Este parámetro se ha reintroducido en PowerShell 7,1This parameter was reintroduced in PowerShell 7.1

Propiedades del scriptScript properties

Se han agregado nuevas propiedades de script al objeto x509Certificate2 que representa los certificados para facilitar la búsqueda y administración de los certificados.New script properties have been added to the x509Certificate2 object that represents the certificates to make it easy to search and manage the certificates.

  • DnsNameList: Para rellenar la DnsNameList propiedad, el proveedor de certificados copia el contenido de la entrada DNSName en la extensión SubjectAlternativeName (San).DnsNameList: To populate the DnsNameList property, the Certificate provider copies the content from the DNSName entry in the SubjectAlternativeName (SAN) extension. Si la extensión SAN está vacía, la propiedad se rellena con el contenido del campo Firmante del certificado.If the SAN extension is empty, the property is populated with content from the Subject field of the certificate.

  • EnhancedKeyUsageList: Para rellenar la EnhancedKeyUsageList propiedad, el proveedor de certificados copia las propiedades OID del campo campo EnhancedKeyUsage (EKU) en el certificado y crea un nombre descriptivo para ella.EnhancedKeyUsageList: To populate the EnhancedKeyUsageList property, the Certificate provider copies the OID properties of the EnhancedKeyUsage (EKU) field in the certificate and creates a friendly name for it.

  • SendAsTrustedIssuer: Para rellenar la SendAsTrustedIssuer propiedad, el proveedor de certificados copia la SendAsTrustedIssuer propiedad del certificado.SendAsTrustedIssuer: To populate the SendAsTrustedIssuer property, the Certificate provider copies the SendAsTrustedIssuer property from the certificate. Para obtener más información, consulte Administración de emisores de confianza para la autenticación de cliente.For more information see Management of trusted issuers for client authentication.

Estas características nuevas permiten buscar certificados en función de sus nombres DNS y fechas de expiración, y distinguir los certificados de autenticación de cliente y de servidor por el valor de sus propiedades de uso mejorado de clave (EKU).These new features let you search for certificates based on their DNS names and expiration dates, and distinguish client and server authentication certificates by the value of their Enhanced Key Usage (EKU) properties.

Uso de la canalizaciónUsing the pipeline

Los cmdlets de proveedor aceptan entradas de canalización.Provider cmdlets accept pipeline input. Puede usar la canalización para simplificar la tarea mediante el envío de datos de proveedor de un cmdlet a otro cmdlet de proveedor.You can use the pipeline to simplify task by sending provider data from one cmdlet to another provider cmdlet. Para más información sobre cómo usar la canalización con cmdlets de proveedor, consulte las referencias de cmdlets que se proporcionan en este artículo.To read more about how to use the pipeline with provider cmdlets, see the cmdlet references provided throughout this article.

AyudaGetting help

A partir de Windows PowerShell 3.0, puede obtener temas de ayuda personalizados sobre cmdlets de proveedor que explican cómo se comportan dichos cmdlets en una unidad del sistema de archivos.Beginning in Windows PowerShell 3.0, you can get customized help topics for provider cmdlets that explain how those cmdlets behave in a file system drive.

Para obtener los temas de ayuda personalizados para la unidad del sistema de archivos, ejecute un comando Get-Help en una unidad del sistema de archivos o use el -Path parámetro de Get-Help para especificar una unidad del sistema de archivos.To get the help topics that are customized for the file system drive, run a Get-Help command in a file system drive or use the -Path parameter of Get-Help to specify a file system drive.

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path cert:

Consulte tambiénSee also

about_Providersabout_Providers

about_Signingabout_Signing

Get-AuthenticodeSignatureGet-AuthenticodeSignature

Set-AuthenticodeSignatureSet-AuthenticodeSignature

Get-PfxCertificateGet-PfxCertificate