Utilizar sesiones web en PowerShell. Desde un PowerShell crear una sesión, almacenarla en un fichero y después abrir otro PowerShell e importar la sesión guardada

Para realizar el ejemplo se ha utilizado el siguiente enlace https://www.jesusninoc.com/02/26/utilizar-sesiones-de-las-aplicaciones-web-en-powershel

Desde un PowerShell crear una sesión y almacenarla en un fichero

# Creo la sesión con un valor, almaceno dicho valor
(Invoke-WebRequest http://localhost:88/primero.php -SessionVariable session).content

# Obtener los valores de la cookie, visto en https://hochwald.net/get-cookies-from-powershell-webrequestsession/
[pscustomobject]$CookieInfoObject = ((($session).Cookies).GetType().InvokeMember('m_domainTable', [Reflection.BindingFlags]::NonPublic -bor [Reflection.BindingFlags]::GetField -bor [Reflection.BindingFlags]::Instance, $null, (($session).Cookies), @()))

$CookieInfoObject.Values.values
$CookieInfoObject.Values.values | Out-File sesion.txt

Después abrir otro PowerShell e importar la sesión guardada

  • Microsoft.PowerShell.Commands.WebRequestSession: WebRequestSession para mantener información sobre la sesión.
  • System.Net.Cookie: proporciona un conjunto de propiedades y métodos que se usan para administrar las cookies. Esta clase no puede heredarse.

[crayon-6a61afd428a94142472069/]