Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Windows Device Portal (WDP) proporciona una manera de que los administradores de dispositivos instalen un certificado personalizado para su uso en la comunicación HTTPS.
Aunque puede hacerlo en su propio equipo, esta característica está pensada principalmente para empresas que tienen una infraestructura de certificados existente en su lugar.
Por ejemplo, una empresa podría tener una entidad de certificación (CA) que usa para firmar certificados para sitios web de intranet servidos a través de HTTPS. Esta funcionalidad se basa en esa infraestructura.
Visión general
De forma predeterminada, WDP genera una autoridad certificadora raíz autofirmada y, a continuación, la utiliza para firmar certificados SSL para cada punto de conexión en el que está a la escucha. Esto incluye localhost, 127.0.0.1y ::1 (localhost IPv6).
También se incluyen el nombre de host del dispositivo (por ejemplo, https://LivingRoomPC) y cada dirección IP local de vínculo asignada al dispositivo (hasta dos [IPv4, IPv6] por adaptador de red).
Para ver las direcciones IP locales de vínculo de un dispositivo, consulte la herramienta Redes del WDP. Empezarán con 10. o 192. para IPv4 o fe80: para IPv6.
En la configuración predeterminada, puede aparecer una advertencia de certificado en el explorador debido a la CA raíz que no es de confianza. En concreto, el certificado SSL proporcionado por WDP está firmado por una entidad de certificación raíz en la que el explorador o el equipo no confía. Esto se puede corregir mediante la creación de una nueva entidad de certificación raíz de confianza.
Crear una CA raíz
Esto solo debe hacerse si la empresa (o el hogar) no tiene configurada una infraestructura de certificados y solo debe realizarse una vez. Ejecute este script desde una solicitud de PowerShell con privilegios elevados (administrador), porque realiza escrituras en el almacén de certificados LocalMachine\My. El script crea una CA raíz denominada WdpTestCA.cer. La instalación de este archivo en las entidades de certificación raíz de confianza del equipo local hará que el dispositivo confíe en certificados SSL firmados por esta entidad de certificación raíz. Puedes instalar (y deberías) este archivo .cer en cada EQUIPO que quieras conectar a WDP.
$CN = "PickAName"
$OutputPath = "c:\temp\"
# Create root certificate authority (marked as a CA via Basic Constraints)
$FilePath = $OutputPath + "WdpTestCA.cer"
$Subject = "CN=" + $CN
$rootCA = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -Subject $Subject -HashAlgorithm "SHA512" -KeyUsage CertSign,CRLSign -TextExtension @("2.5.29.19={critical}{text}CA=true")
$rootCAFile = Export-Certificate -Cert $rootCA -FilePath $FilePath
La entidad de certificación raíz ahora reside en LocalMachine\My (con su clave privada). El WdpTestCA.cer exportado es el certificado público que se instala en Entidades de certificación raíz de confianza en cada equipo que se conecta.
Creación de un certificado SSL con la entidad de certificación raíz
Los certificados SSL tienen dos funciones críticas: proteger la conexión a través del cifrado y comprobar que realmente se comunica con la dirección mostrada en la barra del explorador (Bing.com, 192.168.1.37, etc.) y no un tercero malintencionado.
El siguiente script de PowerShell crea un certificado SSL para el localhost punto de conexión. Cada punto de conexión en el que WDP escucha necesita su propio certificado; Puede reemplazar el $IssuedTo argumento en el script por cada uno de los distintos puntos de conexión del dispositivo: el nombre de host, localhost y las direcciones IP. Este script también requiere una ventana de PowerShell con privilegios elevados. El Get-ChildItem filtro usa el mismo CN (PickAName) que eligió en el paso 1: mantenerlos sincronizados.
$IssuedTo = "localhost"
$Password = "PickAPassword"
$OutputPath = "c:\temp\"
# Retrieve the root CA (with its private key) from the store where it was created.
# Match the CN you used above.
$rootCA = Get-ChildItem -Path cert:\localmachine\my | Where-Object { $_.Subject -eq "CN=PickAName" -and $_.HasPrivateKey } | Select-Object -First 1
# Create SSL cert signed by certificate authority
$IssuedToClean = $IssuedTo.Replace(":", "-").Replace(" ", "_")
$FilePath = $OutputPath + $IssuedToClean + ".pfx"
$Subject = "CN=" + $IssuedTo
$cert = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -Subject $Subject -DnsName $IssuedTo -Signer $rootCA -HashAlgorithm "SHA512"
$certFile = Export-PfxCertificate -cert $cert -FilePath $FilePath -Password (ConvertTo-SecureString -String $Password -Force -AsPlainText)
Si tiene varios dispositivos, puede reutilizar los archivos .pfx de localhost, pero aún tendrá que crear certificados de dirección IP y nombre de host para cada dispositivo por separado.
Cuando se genere la agrupación de archivos .pfx, deberá cargarlos en el WDP.
Aprovisionar Windows Device Portal con las certificaciones
Para cada archivo .pfx que hayas creado para un dispositivo, debes ejecutar el siguiente comando desde un símbolo del sistema con privilegios elevados.
WebManagement.exe -SetCert <Path to .pfx file> <password for pfx>
Consulte a continuación para ver el uso de ejemplo:
WebManagement.exe -SetCert localhost.pfx PickAPassword
WebManagement.exe -SetCert --1.pfx PickAPassword
WebManagement.exe -SetCert MyLivingRoomPC.pfx PickAPassword
Una vez instalados los certificados, reinicie el servicio para que los cambios puedan surtir efecto:
sc stop webmanagement
sc start webmanagement
Tip
Las direcciones IP pueden cambiar con el tiempo. Muchas redes usan DHCP para proporcionar direcciones IP, por lo que los dispositivos no siempre obtienen la misma dirección IP que tenían anteriormente. Si ha creado un certificado para una dirección IP en un dispositivo y la dirección del dispositivo ha cambiado, WDP generará un nuevo certificado con el certificado autofirmado existente y dejará de usar el que creó. Esto hará que la página de advertencia del certificado aparezca de nuevo en el explorador. Por este motivo, se recomienda conectarse a los dispositivos a través de sus nombres de host, que puede establecer en el portal de dispositivos de Windows. Estos permanecerán iguales independientemente de las direcciones IP.