Powershell - "Variable de elemento claro:" vs "Eliminar variable"

Al almacenar el texto temporalmente en las variables de powershell en tiempo de ejecución, ¿cuál es la forma más eficiente de eliminar el contenido de una variable de la memoria cuando ya no es necesario?

He usado ambosClear-Item variable: yRemove-Variable pero, ¿con qué rapidez se elimina algo de la memoria con el último frente a anular el contenido de la memoria con el anterior?

EDIT: debería haber dejado un poco más claro por qué estoy preguntando.

Estoy automatizando el inicio de sesión de RDP para un grupo de máquinas virtuales de aplicaciones (la aplicación no se ejecuta como un servicio, los desarrolladores subcontratados, la larga historia).

Por lo tanto, estoy desarrollando (en gran parte terminado) un script para agrupar sesiones de lanzamiento para cada una de las máquinas virtuales.

La idea es que la función de script que almacena las credenciales usa.read-host para pedir el nombre de host entoncesget-credentials para recoger el dominio / usuario / contraseña.

Luego, el pase se convierte de una cadena segura utilizando una clave de 256 bits (clave de tiempo de ejecución única para la máquina / usuario que almacenó las credenciales y ejecuta el inicio del grupo).

El nombre, dominio, usuario y paso cifrado de las máquinas virtuales se almacenan en un archivo. Al iniciar una sesión, se leen los detalles, se descifra la contraseña, se pasan los detalles acmdkey.exe Almacenar\generic:TERMSRV credencial para esa máquina virtual, borrar la variable de paso de texto sin formato, lanzar mstsc a ese host, unos segundos más tarde eliminar la credencial del almacén de credenciales de Windows. (Si pasara la contraseña a cmdkey.exe como algo que no sea texto sin formato, la sesión RDP recibiría credenciales incorrectas o no).

Entonces, de ahí la pregunta, necesito que la contraseña en texto sin formato exista en la memoria por el menor tiempo posible.

Para mantener contentos a los usuarios de seguridad, el script en sí está encriptado aes256 y un contenedor c # con su propio host ps lee, desencripta y ejecuta el script, por lo que no hay una fuente de texto simple en la máquina que lo ejecuta. (La fuente cifrada en un recurso compartido de archivos es tan efectiva que tengo un interruptor de eliminación, simplemente puedo reemplazar el script cifrado por otro que muestre un mensaje que indica que esta aplicación ha sido desactivada)

Respuestas a la pregunta(5)

Su respuesta a la pregunta