Repository navigation
[#17491][cisco-ftd]: Parse user authentication rejection reasons - #18828
Conversation
…d rejection reasons in cisco FTD
Elastic Docs Style Checker (Vale)Summary: 1 suggestion found 💡 Suggestions (1): Optional style improvements. Apply when helpful.
The Vale linter checks documentation changes against the Elastic Docs style guide. To use Vale locally or report issues, refer to Elastic style guide for Vale. |
This comment has been minimized.
This comment has been minimized.
This comment was marked as spam.
This comment was marked as spam.
This comment has been minimized.
This comment has been minimized.
| # Folder created by the Sonar Scanner | ||
| .scannerwork/ | ||
|
|
||
| # Zed editor settings |
There was a problem hiding this comment.
Context: By default, Zed auto-formats YAML with opinionated rules based on prettier, which introduced a bunch of indentation/whitespace/double quote formatting.
Since I did not want to entirely disable YAML formatting in my whole workspace, I added a project-specific zed configuration for that, hence the need to create a .zed/ folder here, which we don't want included in the code.
There was a problem hiding this comment.
@elastic/ecosystem - Would you mind taking a look at this change?
There was a problem hiding this comment.
@Niceplace would it be an option for you to use ~/.gitignore_global?
Git supports global ignores using this file, so one doesn't need to add all the files of all the tools they use to all the projects.
There was a problem hiding this comment.
I love it ! Thank you
| <182>2025-03-06T16:54:27Z seattle : %FTD-6-302304: Teardown TCP state-bypass connection 123456789 from carpal-tunnel1:10.123.1.23/38110 to EL_BOW2:10.0.10.123/6379 duration 0:02:02 bytes 54 Connection timeout | ||
| <190>2025-12-08T07:15:25Z: %FTD-6-113005: AAA user authorization Rejected : reason = AAA failure : server = 81.2.69.195 : user = user1@example.com : user IP = 10.7.5.8 | ||
| <118>2026-03-24T13:48:05Z: %FTD-6-430002: EventPriority: Low, DeviceUUID: 48a00000-8e53-11ec-9a0c-d396ffaa0000, InstanceID: 23, FirstPacketSecond: 2026-03-24T13:48:05Z, ConnectionID: 56300, AccessControlRuleAction: Allow, SrcIP: 10.123.123.123, DstIP: 10.123.123.124, SrcPort: 1234, DstPort: 5678, Protocol: udp, IngressInterface: inside, EgressInterface: outside, IngressZone: input-zone, EgressZone: output-zone, SourceSecurityGroup: 2005, SourceSecurityGroupTag: 2005, DestinationSecurityGroup: 9, DestinationSecurityGroupTag: 9, SourceSecurityGroupType: Session Directory, DestinationSecurityGroupType: SXP, IngressVRF: Global, EgressVRF: Global, Endpoint Profile: Cisco-Device:Cisco-Collaboration-Device:Cisco-Room-Device, ACPolicy: ProductionPolicy, AccessControlRuleName: Intrusion-Rule, Prefilter Policy: Default Prefilter Policy, Client: DNS, ApplicationProtocol: DNS, InitiatorPackets: 1, ResponderPackets: 0, InitiatorBytes: 102, ResponderBytes: 0, NAPPolicy: Balanced Security and Connectivity, DNSQuery: elastic.co, DNSRecordType: a host address, DNSResponseType: No Error, ReferencedHost: elastic.co, ClientAppDetector: AppID | ||
| <166>May 01 2026 09:24:32Z %FTD-6-113005: AAA user authentication Rejected : reason = Invalid password : server = 192.0.2.20 : user = engineer@elastic.co : user IP = 198.51.100.30 |
There was a problem hiding this comment.
I initially added these log lines in a separate file dedicated to the bugfix, but after initial review with @vinit-chauhan (thanks for the help Vinit :D !) it was decided to move them into an existing log file that contained log entries of a similar category.
Also as a recommendation from the initial review, IP addresses used in tests are valid according to ingest pipeline geoip recommendations.
This comment has been minimized.
This comment has been minimized.
|
Pinging @elastic/integration-experience (Team:Integration-Experience) |
|
I've been able to locally reproduce the failure for the Example aws.config failure: https://buildkite.com/elastic/integrations/builds/42437/canvas?sid=019dfe60-06c0-4b86-a3f2-b404855cfa40&tab=output |
This comment has been minimized.
This comment has been minimized.
….com:elastic/integrations into fix/17491-cisco-ftd-incorrect-reason-parsing
TL;DRBuildkite failed in Check integrations cisco_ftd because the package README check is out of sync: the PR adds Remediation
Investigation detailsRoot CauseThis is a configuration/docs sync failure, not a parser runtime/test assertion failure. The PR updates the grok capture to
During CI, Evidence
VerificationNot run in this workflow (read-only detective run); diagnosis is from Buildkite logs + PR diff correlation. Follow-upIf What is this? | From workflow: PR Buildkite Detective Give us feedback! React with 🚀 if perfect, 👍 if helpful, 👎 if not. |
| | cisco.ftd.missed_updates_count | The number of Stateful Failover updates missed. | long | | ||
| | cisco.ftd.privilege.new | When a users privilege is changed this is the new value | keyword | | ||
| | cisco.ftd.privilege.old | When a users privilege is changed this is the old value | keyword | | ||
| | cisco.ftd.rejection_reason | Reason for AAA user authentication rejection | keyword | |
There was a problem hiding this comment.
Could you regenerate the README? I think this is stale.
💚 Build Succeeded
History
|
…ns (elastic#18828) * fix: Add support in grok processors for four more variants of password rejection reasons in cisco FTD * Generate changelog entry and bump version * Ignore per-project zed editor settings * Revert whitespace & quote changes introduced by editor auto-formatting * Re-add grok processor fix for authentication reason field * Move logs to a file containing existing logs similary in category * Ensure rejection reason is parsed and mapped to the ECS field * Revert local changes for editor, will use global ignore instead * Update generated JSON without formatting * Use ECS field event.reason instead of custom vendor field * Rebuild package to remove custom field we no longer use * Added Undefined as a supported reason, taking example from cisco ASA
|
Package cisco_ftd - 3.13.5 containing this change is available at https://epr.elastic.co/package/cisco_ftd/3.13.5/ |
Proposed commit message
Add grok processor support in cisco FTD integration to accept four variants of user authentication rejection reasons: Invalid Password, Password is expiring, Password malformed, Password has expired. The support for "Invalid Password" is scoped to address issue #17491 whereas the other three rejection reasons are a backport of #8015
Checklist
changelog.ymlfile.How to test this PR locally
From the root of the repo
packages/cisco_ftdelastic-package stack up -delastic-package test pipelineSample logs used for pipeline tests are in
/packages/cisco_ftd/data_stream/log/_dev/test/pipeline/test-ftd-fix-message-113005-user-auth-rejected.logRelated issues
Fixes: #17491 and as recommended in #17491 (comment), implements the same support for authentication reason rejections as #8015