Omitir para ir al contenido principal
  • Hacer pedidos rápida y fácilmente
  • Ver pedidos y realizar seguimiento al estado del envío
  • Cree y acceda a una lista de sus productos
  • Administre sus sitios, productos y contactos de nivel de producto de Dell EMC con Administración de la empresa.

Función de contraseña segura de Dell Command en PowerShell Provider

Resumen: Dell Command | Característica de contraseña segura del proveedor de PowerShell (DCPP), ConvertTo-SecureString, ConvertFrom-SecureString

Es posible que este artículo se traduzca automáticamente. Si tiene comentarios sobre su calidad, háganoslo saber mediante el formulario en la parte inferior de esta página.

Contenido del artículo


Instrucciones

Productos afectados:

  • Dell Command | PowerShell Provider

El concepto detrás de las contraseñas seguras es que en los scripts de producción no debemos pasar contraseñas importantes como simples. Se trata de una grave falta de seguridad. Por lo tanto, con PowerShell podemos proteger una contraseña o, al menos, reducir su visibilidad. En primer lugar, analizaremos los aspectos generales de la cadena segura y, luego, cómo Dell Command PowerShell Provider (DCPP) aprovecha la característica innata de PowerShell para proteger la contraseña.

Tenga en cuenta que deseamos leer el nombre de usuario y la contraseña del usuario en la consola. Sabemos que el nombre de usuario generalmente no requiere ninguna seguridad y puede ser visible para todos. Pero para la contraseña no debemos permitir que extraños conozcan la contraseña del usuario. Podemos facilitar este requisito con los comandos que se indican a continuación:

$user = Read-Host "Enter Username"

$pass = Read-Host "Enter Password" -AsSecureString

Lo anterior es una visión general de cómo podemos agregar más seguridad cuando debemos proteger información importante como una contraseña. En el ejemplo anterior, la variable $pass es del tipo System.Security.SecureString. Obtenemos una introducción a otros dos cmdlets ampliamente utilizados que PowerShell proporciona para facilitar la protección de los campos antes de abordar aspectos de DCPP.

Los dos comandos son los siguientes: ConvertTo-SecureString y ConvertFrom-SecureString. ConvertTo-SecureString Convierte un texto sin formato en texto System.Security.SecureString. A continuación, se muestra un ejemplo:

"P@ssword1" | ConvertTo-SecureString -AsPlainText -Force

En el ejemplo anterior, el texto sin formato P@assword1 se convierte en el tipo System.Security.SecureString. Esto es más información y puede o no ser ampliamente utilizado.

El siguiente cmdlet ConvertFrom-SecureString es un cmdlet más utilizado que se utiliza para convertir cadenas seguras en cadenas estándar cifradas. La principal limitación de la ConvertTo-SecureString es que su salida no se puede escribir directamente en un archivo para su uso futuro. Tenemos que usar ConvertFrom-SecureString que convierte System.Security.SecureString en una cadena estándar cifrada que se puede guardar convenientemente en un archivo, para superar esta limitación.

Estamos convirtiendo texto sin formato P@ssword1 para asegurar la cadena y luego canalizar su salida a ConvertFrom-SecureString para obtener una cadena cifrada que se puede guardar de manera segura y conveniente en un archivo.

Como ejemplo, digamos en una computadora si se ha establecido la contraseña de administrador y debemos guardarla en un archivo. Podemos hacer esto usando:

Read-Host "Enter Admin Password" -AsSecureString |
ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt"

Podemos recuperar esta contraseña de administrador en una variable como un objeto seguro como:

$pass = Get-Content "C:\Scripts\AdminPassword.txt" | ConvertTo-SecureString

Ahora consideremos cómo aprovechar una contraseña segura para DCPP. En DCPP, si la computadora del usuario tiene configurada una contraseña de administrador o de sistema, entonces para todos set comandos que tenemos para pasar la contraseña respectiva. Por lo tanto, proporcionar esta contraseña como texto sin formato infringe la seguridad. Tenemos que pasar la contraseña como System.Security.SecureString. Además, cuando pasamos un SecureString contraseña tenemos que pasarla con un -PasswordSecure switch y no el normal –Password interruptor. A continuación, se muestra un ejemplo en el que el usuario intenta establecer AdvancedBatteryChargeCfg to Disabled y pasando SecureString contraseña:

Set-item AdvancedBatteryChargeCfg disabled –PasswordSecure $pass

Aquí$pass contiene la contraseña del sistema y de administrador, y es del tipo System.Security.SecureString. De manera similar a la discusión anterior, podemos leer: $pass como:

$pass = Read-Host "Enter system/admin password" –AsSecureString

Podemos ahorrar $pass a un archivo, si es necesario, como:

$pass| ConvertFrom-SecureString | Out-File "C:\Scripts\AdminPassword.txt

Información adicional

Propiedades del artículo


Producto comprometido

Dell Command | Powershell Provider

Fecha de la última publicación

18 jul. 2024

Versión

8

Tipo de artículo

How To