Hi Team,
I'm curious how to filter message body in ELK using kibana because i have too many XML line in JSON message
This is my example JSON alert in kibana UI
"message": "\"The Federation Service failed to issue a valid token. See XML for failure details. \r\n\r\nActivity ID: nbnbnbnb-jkaskjka-iauous \r\n\r\nAdditional Data \r\nXML: <?xml version=\"1.0\" encoding=\"utf-16\"?>\r\n<AuditBase xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:type=\"AppTokenAudit\">\r\n <AuditType>AppToken</AuditType>\r\n <AuditResult>Failure</AuditResult>\r\n <FailureType>IssuanceAuthZError</FailureType>\r\n <ErrorCode>N/A</ErrorCode>\r\n <ContextComponents>\r\n <Component xsi:type=\"ResourceAuditComponent\">\r\n <RelyingParty>hghghhas-oioiosa</RelyingParty>\r\n <ClaimsProvider>N/A</ClaimsProvider>\r\n <UserId>domain\user</UserId>\r\n </Component>\r\n <Component xsi:type=\"AuthNAuditComponent\">\r\n <PrimaryAuth>N/A</PrimaryAuth>\r\n <DeviceAuth>false</DeviceAuth>\r\n <DeviceId>N/A</DeviceId>\r\n <MfaPerformed>false</MfaPerformed>\r\n <MfaMethod>N/A</MfaMethod>\r\n <TokenBindingProvidedId>false</TokenBindingProvidedId>\r\n <TokenBindingReferredId>false</TokenBindingReferredId>\r\n <SsoBindingValidationLevel>NotSet</SsoBindingValidationLevel>\r\n </Component>\r\n <Component xsi:type=\"ProtocolAuditComponent\">\r\n <OAuthClientId>N/A</OAuthClientId>\r\n <OAuthGrant>N/A</OAuthGrant>\r\n </Component>\r\n <Component xsi:type=\"RequestAuditComponent\">\r\n <Server>https://axfs.aaaa.net/adfs</Server>\r\n <AuthProtocol>OAuth</AuthProtocol>\r\n <NetworkLocation>Extranet</NetworkLocation>\r\n <IpAddress>10.xx.xx.xx</IpAddress>\r\n <ProxyServer>10.xx.xx.xx</ProxyServer>\r\n <UserAgentString>Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/92.0.4515.159 Safari/537.36</UserAgentString>\r\n <Endpoint>/adfs/oauth2/authorize/</Endpoint>\r\n </Component>\r\n </ContextComponents>\r\n</AuditBase>\"",
i wanto to extract just specific information from message field like <UserId>, <NetworkLocation> and <IpAddress>
i know windows_eventchannel decoder can't be extended so we can't parse win.eventdata.data to get IP address, Proxy, UserId, etc so i think if we can filter by display
I found other example for using pipe line processors to extract the specific information from message field (
https://stackoverflow.com/questions/63152207/filter-message-body-in-elastic-search-using-kibana)
Is this possible to achieve that from my message field?
Thank You,