Login Powershell Script Fehler
Hi,
eigentlich wollte ich nur ein simples Script verfassen welches nach einem Erfolgreichen Anmelden eines Users dessen Workstation und Loginzeit an
spezifizierte Email Adresse sendet, dazu habe ich folgendes Script erstellt und dachte eigentlich das es so laufen muesste aber ich renne in den unten Stehenden fehler, erstmal das script, eigentlich selbst erklaerend:
Die Fehlermeldung die mich noch Wahnsinnig macht ist:
Da die Mail im Kontext von bereichts authentifizierten Usern gesendet wird waerend des Login Prozesses muss doch eigentlich auch moeglich sein komplett ohne predefinierten User / ohne Die $Creds auszukommen oder ?
eigentlich wollte ich nur ein simples Script verfassen welches nach einem Erfolgreichen Anmelden eines Users dessen Workstation und Loginzeit an
spezifizierte Email Adresse sendet, dazu habe ich folgendes Script erstellt und dachte eigentlich das es so laufen muesste aber ich renne in den unten Stehenden fehler, erstmal das script, eigentlich selbst erklaerend:
$pw = Get-Content \\Server\path\filename.txt | ConvertTo-SecureString
$cred = New-Object System.Management.Automation.PSCredential "service_account", $pw
$subject = [Environment]::UserName.substring(1,1).toupper()+[Environment]::UserName.substring(2)+", "+[Environment]::UserName.substring(0,1).toupper()+" hat sich an "+[Environment]::MachineName+" eingeloggt"
$C10 = [char]10
$Zeit = Get-Date
$body = [Environment]::UserName+" hat sich erfolgreich an "+[Environment]::MachineName+" eingeloggt."+$C10+$C10+$C10
$body=$body + 'Logon Server: '+$env:logonserver+$C10
$body=$body + 'Aktuelle Uhrzeit: '+$Zeit+$C10
Send-MailMessage -Credential $cred -to "user@tld.com" -from "Anmeldung <no-reply@tld.com>" -Subject $subject -body $body -SmtpServer internal.server.lan
Die Fehlermeldung die mich noch Wahnsinnig macht ist:
ConvertTo-SecureString : Schlüssel ist im angegebenen Status nicht gültig.
In Path\loginmail.ps1:1 Zeichen:73
+ $pw = Get-Content \\path\\netlogon\scripts\filename.txt | ConvertT ...
+ ~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [ConvertTo-SecureString], CryptographicException
+ FullyQualifiedErrorId : ImportSecureString_InvalidArgument_CryptographicError,Microsoft.PowerShell.Commands.ConvertToSecureStringCommand
New-Object : Ausnahme beim Aufrufen von ".ctor" mit 2 Argument(en): "Das Argument kann nicht verarbeitet werden, da der Wert des Arguments "password" NULL ist. Ändern Sie den Wert
des Arguments "password" in einen Wert ungleich NULL."
In path\loginmail.ps1:2 Zeichen:9
+ $cred = New-Object System.Management.Automation.PSCredential "service_account", $p ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidOperation: (:) [New-Object], MethodInvocationException
+ FullyQualifiedErrorId : ConstructorInvokedThrowException,Microsoft.PowerShell.Commands.NewObjectCommand
Da die Mail im Kontext von bereichts authentifizierten Usern gesendet wird waerend des Login Prozesses muss doch eigentlich auch moeglich sein komplett ohne predefinierten User / ohne Die $Creds auszukommen oder ?
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 227578
Url: https://administrator.de/forum/login-powershell-script-fehler-227578.html
Ausgedruckt am: 07.05.2025 um 07:05 Uhr
3 Kommentare
Neuester Kommentar
Hallo agnostiker,
Liegt das Passwort bereits verschlüsselt in der Textdatei vor ? Wenn ja, hast du das Passwort vermutlich mit einem anderen als dem Service-Account verschlüsselt erzeugt, siehe: http://social.technet.microsoft.com/Forums/de-DE/74fa3d1a-ded7-4e89-827 ...
Grüße Uwe
Da die Mail im Kontext von bereichts authentifizierten Usern gesendet wird waerend des Login Prozesses muss doch eigentlich auch moeglich sein komplett ohne predefinierten User / ohne Die $Creds auszukommen oder ?
Eigentlich ja, wenn User berechtigt ist Mails zu versenden. (http://www.windowspro.de/script/send-mailmessage-e-mails-versenden-powe ..)Liegt das Passwort bereits verschlüsselt in der Textdatei vor ? Wenn ja, hast du das Passwort vermutlich mit einem anderen als dem Service-Account verschlüsselt erzeugt, siehe: http://social.technet.microsoft.com/Forums/de-DE/74fa3d1a-ded7-4e89-827 ...
Grüße Uwe
ist denn bei allen Usern die "Powershell Script Execution-Policy" (Set-ExecutionPolicy) korrekt gesetzt ?
falls es doch an der Mail-Funktion haken sollte, benutze mal diese Funktion zum Mail versenden
(Zeile 2-5 noch anpassen / letzte Zeile versendet eine Beispiel-Mail mit dieser Function)
falls es doch an der Mail-Funktion haken sollte, benutze mal diese Funktion zum Mail versenden
(Zeile 2-5 noch anpassen / letzte Zeile versendet eine Beispiel-Mail mit dieser Function)
Function sendmail($FROM,$TO,$SUBJECT,$BODY,$ATTACHMENTS = $null){
$SMTPHOST = "smtp.server.de"
$SMTPPORT = 25
$SMTPUSER = "USERNAME"
$SMTPPass = "PASSWORD"
$SMTPClient = New-object System.Net.Mail.SmtpClient($SMTPHOST,$SMTPPORT)
$SMTPClient.EnableSsl = $true
$Mail = new-object System.Net.Mail.MailMessage
$Mail.from = $FROM
$Mail.to.add($TO)
$SMTPClient.Credentials = new-object System.Net.NetworkCredential($SMTPUSER,$SMTPPass)
$Mail.Subject = $SUBJECT
$Mail.Body = $BODY
# Add Attachments
if ($ATTACHMENTS){
foreach ($att in $ATTACHMENTS){
$Mail.Attachments.Add($att.FullName)
}
}
$SMTPClient.Send($Mail)
}
sendmail "absender@domain.com" "empfaenger@domain.com" "DEIN BETREFF" "DER INHALT"