windows10
Goto Top

Eventlog per Email

Hallo zusammen

Ich möchte das ein gewisser Teil vom Evenlog via Mail zugestellt wird, aktuell sendet es mir nicht gerade viel:

$Subject = “Attribute wurden geändert 5136 ” # Message Subject 
$Server = “172.20.105.53” # SMTP Server 
$From = “mail@mail.de” # From whom we are sending an e-mail 
$To = “mail2@mail2.de” # To whom we are sending
$Pwd = ConvertTo-SecureString “hp8UUJYy.§P” -AsPlainText -Force #Sender account password (Warning! Use a very restricted account for the sender, because the password stored in the script will be not encrypted)
$Cred = New-Object System.Management.Automation.PSCredential(“helpdesk” , $Pwd) #Sender account credentials 
$encoding = [System.Text.Encoding]::UTF8 #Setting encoding to UTF8 for message correct display
#Powershell command for filtering the security log about created user account event  
$Body=Get-WinEvent -FilterHashtable @{LogName=”Security”;ID=5136} | Select TimeCreated,@{n=”Account creator”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “SubjectUserName”} |%{$_.’#text’}}},@{n=”User Account”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “SamAccountName”}| %{$_.’#text’}}} | select-object -first 1 
#Sending an e-mail. 
Send-MailMessage -From $From -To $To -SmtpServer $Server -Body “$Body” -Subject $Subject -Credential $Cred -Encoding $encoding

Zusätzlich möchte ich, das es mir den Eintrag: AttributeValue (Wert) vom Eventlog 5136 mit sendet

wie mach ich das ?
eventlog

Content-ID: 5627811705

Url: https://administrator.de/contentid/5627811705

Ausgedruckt am: 22.11.2024 um 07:11 Uhr

SlainteMhath
SlainteMhath 25.01.2023 um 13:21:10 Uhr
Goto Top
Moin,

schonmal versucht den Select im Get.WinEvent sntsprechend zu ergänzen, etwas mit
@{n=”Attributr”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “AttributeValue ”} |%{$_.’#text’}}},
?

lg,
Slainte
windows10
windows10 25.01.2023 um 13:52:45 Uhr
Goto Top
Zitat von @SlainteMhath:

Moin,

schonmal versucht den Select im Get.WinEvent sntsprechend zu ergänzen, etwas mit
@{n=”Attributr”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “AttributeValue ”} |%{$_.’#text’}}},
?

lg,
Slainte

das hat leider nicht geklappt, da kommt gar keine Mail mehr face-smile
$Body=Get-WinEvent -FilterHashtable @{LogName=”Security”;ID=5136} | Select TimeCreated,@{n=”Account creator”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “SubjectUserName”} |%{$_.’#text’}}},@{n=”User Account”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “SamAccountName”}| %{$_.’#text’}}} | select-object -first 1 @{n=”Attributr”;e={([xml]$_.ToXml()).Event.EventData.Data | ? {$_.Name -eq “AttributeValue ”} |%{$_.’#text’}}},
5175293307
5175293307 25.01.2023 aktualisiert um 14:09:29 Uhr
Goto Top
Du willst ein Object als Body in einer Mail senden?! Das geht so nicht du muss die Objects erst explizit in Strings konvertieren, bspw. so
$Body=Get-WinEvent ................ | format-list | out-string
Wurstel
windows10
windows10 25.01.2023 um 14:14:26 Uhr
Goto Top
Zitat von @5175293307:

Du willst ein Object als Body in einer Mail senden?! Das geht so nicht du muss die Objects erst explizit in Strings konvertieren, bspw. so
$Body=Get-WinEvent ................ | format-list | out-string
Wurstel

Muss nicht im Body sein, kann irgendwo in der Email stehen, würdest du mir bitte den Ganzen Code Posten ?
Danke
5175293307
5175293307 25.01.2023 aktualisiert um 15:16:15 Uhr
Goto Top
Zitat von @windows10:
, würdest du mir bitte den Ganzen Code Posten ?
Steht doch da einfach das | format-list | out-string in der $Body Zeile hinten dran pasten, OMG mal wieder ein Copy n Paste Opfer ... RTFM dann siehst du auch was die Befehle machen, musst nicht blind kopieren und verstehst hinterher auch wieso und warum.