Tengo un script de Powershell que se ejecutará a través de una herramienta de automatización contra varios servidores. Funciona bien en máquinas con Windows, ya que las llamadas remotas utilizan la cuenta de servicio de la herramienta sin necesidad de solicitar ni exponer ninguna credencial en el código. Esta secuencia de comandos también se ejecuta contra máquinas Linux a través de SSH utilizando el paquete SharpSSH. SharpSSH no utiliza automáticamente las credenciales del usuario de Powershell, pero requiere un nombre de usuario y contraseña, un archivo de clave RSA o un objeto PSCredential. No puedo solicitar credenciales con Get-Credential porque se está ejecutando a través de la herramienta de automatización. No quiero exponer el nombre de usuario y la contraseña en el código o tener una clave RSA ahí. Me gustaría construir un objeto PSCredential del usuario actual de Powershell (la cuenta de servicio). Probar [System.Net.CredentialCache] :: DefaultNetworkCredentials muestra un espacio en blanco, y [System.Security.Principal.WindowsIdentity] :: GetCurrent() no proporciona el objeto o la información que necesito.Obtiene el objeto de credenciales de usuario actual en Powershell sin preguntar
¿Alguien tiene un método para crear un objeto PSCredential del usuario actual? ¿O tal vez una alternativa completamente diferente para este problema?
¡Muchas gracias!
Ahh, eso es desafortunado. Después de algunas discusiones e investigaciones, vamos a ir con la clave RSA. En cualquier caso, terminará habilitando más en el futuro. Gracias, Taylor! – Beege
Usted dice que si el usuario es parte de AD, puede obtener un objeto de credencial; ¿Es eso correcto? Estoy tratando de hacer esto (el título de la pregunta), en Windows. – ryanwebjackson