Invoke Sftp Session
Zuletzt geändert: 14.03.2026 05:56

Invoke-SftpSession #

Intern – Diese Funktion ist nicht exportiert und nur modulintern verfügbar.

ÜBERSICHT #

Erstellt eine neue SFTP-Session und behandelt Fehler wie ungültige Zugangsdaten oder nicht erreichbare Server zentral.

SYNTAX #

Invoke-SftpSession [-SessionParams] <hashtable> [<CommonParameters>]

BESCHREIBUNG #

Die Funktion Invoke-SftpSession versucht, eine Verbindung zu einem SFTP-Server mittels der bereitgestellten Parameter aufzubauen. Sie stellt sicher, dass häufig auftretende Verbindungsfehler, wie falsche Servernamen, ungültige Ports, falsche Passwörter oder nicht vorhandene Zertifikate sauber und ohne sichtbare Ausnahmen abgefangen werden.

Im Fehlerfall liefert die Funktion eine klare Warnmeldung mit Informationen zu Server und Benutzer zurück und gibt als Ergebnis $null zurück, um nachgelagerte Funktionen über den Verbindungsfehler zu informieren.

Diese Funktion ist speziell zur zentralen Nutzung durch andere SFTP-Funktionen gedacht, die auf POSH-SSH basieren, um redundanten Code zu vermeiden und eine einheitliche Fehlerbehandlung zu gewährleisten.

PARAMETER #

-SessionParams #

Type: hashtable

Hashtable mit Parametern, die direkt z.B. an New-SFTPSession übergeben werden, z.B. Server, Port, User, Password, PlainPassword, PasswordPath oder Certificate.

AUSGABEN #

SftpSession, void

Gibt bei Erfolg ein Objekt vom Typ SftpSession zurück. Bei Fehlern wie falschen Zugangsdaten oder nicht erreichbaren Servern wird $null zurückgegeben.

BEISPIELE #

$sessionParams = @{
  Server = 'sftp.example.com'
  User = 'testuser'
  PasswordPath = 'C:\Passworte\testuser.xml'
}
$session = Invoke-SftpSession -SessionParams $sessionParams

if ($session) {
  # Verbindung erfolgreich
}
else {
  # Fehlerbehandlung hier
}
# Authentifizierung mit ungültigem Passwort
$sessionParams = @{
  Server = 'sftp.example.com'
  User = 'testuser'
  PlainPassword = 'falsch'
}
$session = Invoke-SftpSession -SessionParams $sessionParams
# Ausgabe: Warnmeldung und Rückgabe null

HINWEISE #

  • Benötigt das Modul POSH-SSH. Installation: Install-Module -Name POSH-SSH -Repository PSGallery
  • Ideal zur Verwendung in einer Vielzahl von SFTP-Funktionen, um einheitliche Fehlerbehandlung und minimalen redundanten Code sicherzustellen.