Almacene contraseñas en el Administrador de credenciales de Windows para evitar mensajes de PowerShell
PowerShell facilita el trabajo del administrador al automatizar procesos que requieren repeticiones, reduciendo así la posibilidad de errores. Hay un problema común al que se enfrentan los administradores todos los días cuando utilizan PowerShell. Como administrador de Microsoft 365, resulta difícil seguir escribiendo nombres de usuario y contraseñas cuando se conecta a varios inquilinos, sitios de SharePoint o varios servicios de Office 365. Para evitar que se le solicite un nombre de usuario y contraseña en tales casos, existen algunas formas de hacerlo. ¡Veámoslos!
¿Cómo se pueden omitir las indicaciones de PowerShell?
Al ejecutar scripts de PowerShell, es necesario guardar las credenciales para que puedan introducirse en scripts que se ejecutan de forma autónoma.
Codificar la contraseña en scripts: uno de los métodos comunes es escribir el nombre de usuario y la contraseña directamente en el script de PowerShell como texto sin formato y luego crear un objeto de credencial de PowerShell para pasar. El método funciona para ejecutar un script de PowerShell sin pasar por el cmdlet Get-Credential. Pero es bastante inseguro, ya que el script de PowerShell almacena variables de cadena en texto sin formato. Los piratas informáticos pueden explotar fácilmente las contraseñas codificadas para acceder a cuentas de administrador de alto nivel.
Almacenamiento de credenciales en un archivo: En algunas situaciones, los administradores pueden almacenar la contraseña en un archivo como texto sin formato para ejecutar PowerShell sin que se le solicite. Pero generalmente no es una buena idea almacenar contraseñas en archivos. Incluso si el archivo está cifrado, todavía existe el riesgo de que el cifrado se vea comprometido, permitiendo a los atacantes acceder a las contraseñas.
Dado que los riesgos asociados con el almacenamiento de contraseñas en un archivo y la codificación rígida de la contraseña en scripts superan con creces cualquier beneficio potencial, el uso de Credential Manager se convirtió en una práctica cada vez mayor.
Uso de certificados: Los certificados son la mejor opción cuando no desea ingresar credenciales varias veces para acceder a la red. Puede crear fácilmente certificados autofirmados y utilizarlos con fines internos y de prueba. Para entornos de producción y externos, es necesario utilizar certificados de CA, que son costosos. Sin embargo, sólo unos pocos servicios admiten la autenticación basada en certificados.
Administrador de credenciales de Windows : el Administrador de credenciales de Windows es un administrador de contraseñas fácil de usar donde puede guardar credenciales para acceder a recursos de red, sitios web y aplicaciones. Permite conservar 4 tipos de credenciales que incluyen credenciales de Windows, credenciales basadas en certificados y credenciales web. Además de guardar sus nombres de usuario y contraseñas de inicio de sesión, Credential Manager también le permite ver, eliminar, agregar, realizar copias de seguridad y restaurar credenciales.
Profundicemos y aprendamos cómo el Administrador de credenciales de Windows ayuda a omitir los scripts de PowerShell sin que se le soliciten contraseñas.
¿Cómo acceder al Administrador de credenciales de Windows desde PowerShell?
Aprenda cómo puede administrar las credenciales guardadas usando el Administrador de credenciales de Windows de PowerShell.
Para acceder a Credential Manager en PowerShell, el primer paso es instalar el módulo Credential Manager.
Install-Module -Name CredentialManager¿Cómo guardar contraseñas en el Administrador de credenciales?
El cmdlet New-StoredCredential ayuda a almacenar credenciales para diferentes usuarios, inquilinos o aplicaciones.
New-StoredCredential -Target Contoso -UserName admin@contoso.com -Password XXX -Type Generic -Persist LocalMachineEl ejemplo anterior almacena la credencial de administrador para el inquilino de Office 365, Contoso. Cuando pasa persistir como máquina local, puede ver la credencial genérica almacenada en la interfaz de usuario.
Puede recuperar todas las credenciales almacenadas en Credential Manager ejecutando el siguiente cmdlet.
Get-StoredCredential¿Cómo acceder al Administrador de credenciales de Windows mediante PowerShell?
Usando Get-StoredCredential puede recuperar la credencial almacenada y usarla en los scripts de PowerShell.
Para obtener y almacenar la credencial en una variable, ejecute el siguiente cmdlet.
$Cred=Get-StoredCredential -Target Contoso
$Cred
Para conectarse a múltiples servicios de Office 365 sin que aparezca la ventana emergente de credenciales, puede pasar $Cred mientras crea la sesión.
Por ejemplo, para conectarse a Exchange Online PowerShell, puede llamar al cmdlet Connect-ExchangeOnline pasando el parámetro Credential.
Connect-ExchangeOnline -Credential $CredPara comprobar si está conectado correctamente, puede utilizar cmdlets como Get-Mailbox, etc.
Si desea eliminar las credenciales de la bóveda de Windows, ejecute el siguiente comando:
Remove-StoredCredential -Target ContosoEntonces, así es como puede evitar las solicitudes de credenciales de PowerShell utilizando el Administrador de credenciales de Windows.
Almacenamiento de contraseñas en el Administrador de credenciales de Windows
Además de PowerShell, conozca cómo se pueden almacenar las contraseñas en el Administrador de credenciales de Windows. Más tarde, podrá recuperarlo y utilizarlo en su script de PowerShell.
Paso 1: busque Administrador de credenciales en su sistema.
Paso 2: haga clic en Credenciales de Windows.
Paso 3: navegue hasta Agregar una credencial genérica.
Paso 4: Luego se le dirigirá a una nueva página donde deberá ingresar la URL, el nombre de usuario y la contraseña.
Digamos, por ejemplo, que está almacenando las credenciales de un usuario inquilino de Office 365 Contoso mediante el Administrador de credenciales de Windows.
En la sección de dirección de red o Internet, debe ingresar el destino. Y luego ingrese el Nombre de usuario y Contraseña respectivamente.
¿Por qué los administradores prefieren Credential Manager para una gestión eficiente de contraseñas?
A continuación se presentan algunas razones por las que los administradores podrían preferir utilizar el Administrador de credenciales para almacenar las credenciales.
- Enfoque fácil de usar: almacenar credenciales en Windows Vault no requiere ningún cmdlet físico. Los usuarios pueden ingresar manualmente las credenciales y ejecutarlas en scripts de PowerShell con facilidad.
- Las tareas programadas ya no son una molestia: considere el caso de un script automatizado que se ejecuta como parte de una tarea programada o un marco de automatización. Es probable que nadie supervise la consola para escribir un nombre de usuario y contraseña en estas situaciones. La función Get-StoredCredential también se puede integrar fácilmente en scripts que esté ejecutando como tareas programadas.
- Compatibilidad con múltiples servicios: como característica incorporada de Windows, Credential Manager es compatible con una amplia gama de aplicaciones y servicios. Por tanto, es una opción conveniente para almacenar credenciales de forma regular.
- Almacenamiento cifrado: con Credential Manager, todas sus credenciales están cifradas, lo que garantiza que estén seguras y protegidas contra el acceso no autorizado.
Aunque Credential Manager es conveniente para almacenar contraseñas, también existen algunos riesgos de seguridad asociados.
- De hecho, sus contraseñas se almacenan en formato cifrado en Credential Manager. Pero, una vez que su computadora se ve comprometida, los piratas informáticos pueden acceder fácilmente a todas sus credenciales almacenadas en Windows Vault.
- El hecho de que las contraseñas almacenadas en Credential Manager no funcionen en una cuenta con MFA es muy poco divertido. Como todos sabemos, se requieren prácticas sólidas de MFA para mantener a sus usuarios alejados de ataques de identidad famosos, como phishing, fatiga de MFA, intercambio de SIM, repetición, etc.
- Dado que Credential Manager es un administrador de contraseñas básico, no ofrece muchas de las funciones avanzadas que puede encontrar en un administrador de contraseñas dedicado.
En conclusión, Credential Manager es una herramienta esencial para cualquiera que utilice PowerShell de forma habitual. Ya sea administrador o simplemente alguien que necesita automatizar tareas y evitar mensajes, Credential Manager puede ayudarlo a almacenar y administrar sus credenciales, ahorrándole tiempo y mejorando su productividad.
Espero que este blog le haya ayudado a obtener información sobre cómo utilizar el Administrador de credenciales de Windows para almacenar credenciales y evitar mensajes al ejecutar scripts de PowerShell. No dude en dejar un comentario a continuación con su opinión sobre este tema y cualquier otro método eficiente que siga para almacenar credenciales.


