Skip to content

[system][auth] Remove deprecated user.name/user.id duplication for IAM events#20353

Open
nicholasberlin wants to merge 1 commit into
mainfrom
breaking/system-auth-remove-user-name-duplication
Open

[system][auth] Remove deprecated user.name/user.id duplication for IAM events#20353
nicholasberlin wants to merge 1 commit into
mainfrom
breaking/system-auth-remove-user-name-duplication

Conversation

@nicholasberlin

@nicholasberlin nicholasberlin commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

Important

Merge #20352 (dashboard migration to user.target.*) first. This PR is
based directly on main and will be rebased once #20352 merges, so the
bundled New users and groups dashboard never ships a version that reads
fields this PR removes.

Proposed commit message

Contract phase of the expand-and-contract migration started in 2.22.0
(#20339): the auth data stream no longer writes the
affected account to user.name/user.id for useradd account creation,
usermod group membership, userdel deletion, and PAM password change events.
The affected account remains in user.target.name (and user.target.id for
useradd); user.name on these events is reserved for the acting user,
matching ECS semantics. On journald input, useradd events now keep the actor
UID from journald metadata in user.id instead of having it overwritten by
the created account's UID.

Mechanically this deletes the five *_compat processors that 2.22.0
introduced for backward compatibility and regenerates the pipeline test
expectations, whose diff is exactly the removal of the duplicated fields.

Ships as 3.0.0 with a breaking-change changelog entry so Kibana requires
users to acknowledge the change before upgrading. The bundled New users and
groups dashboard already reads user.target.* as of 2.23.0 (#20352).

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs. N/A, pipeline-only change
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines. N/A
  • I have verified that any added dashboard complies with Kibana's Dashboard good practices N/A

Author's Checklist

  • Merge [system] Use user.target.* in New users and groups dashboard #20352 first, then rebase this PR (the 3.0.0 changelog entry
    references the 2.23.0 dashboard change it introduces).
  • Breaking change: detections, dashboards, and saved searches keyed on
    user.name/user.id for these IAM events stop matching new data. The
    changelog entry (surfaced by Kibana's upgrade acknowledgment prompt) tells
    users what changed, why, and to migrate content to user.target.*.
  • Timing: 2.22.0 announced the deprecation. Reviewers should confirm
    enough release time has passed between the expand and contract phases for
    users to migrate, and hold this PR if not.

How to test this PR locally

cd packages/system
elastic-package stack up -d
elastic-package test pipeline --data-streams auth

Or simulate directly:

POST _ingest/pipeline/logs-system.auth-<version>/_simulate

with useradd/usermod/userdel/passwd-chauthtok sample events (see
#20105) and verify the affected account appears only in
user.target.* (plus related.user), with user.name/user.id no longer
duplicated.

Related issues

@nicholasberlin
nicholasberlin requested review from a team as code owners July 24, 2026 17:38
@github-actions

Copy link
Copy Markdown
Contributor

✅ Elastic Docs Style Checker (Vale)

No issues found on modified lines!


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.

…M events

Contract phase of the expand-and-contract migration started in 2.22.0
(#20339): the auth data stream no longer writes the
affected account to user.name/user.id for useradd account creation,
usermod group membership, userdel deletion, and PAM password change
events. The affected account remains in user.target.name (and
user.target.id for useradd); user.name on these events is reserved for
the acting user, matching ECS semantics. On journald input, useradd
events now keep the actor UID from journald metadata in user.id instead
of having it overwritten by the created account's UID.

Mechanically this deletes the five *_compat processors that 2.22.0
introduced for backward compatibility and regenerates the pipeline test
expectations, whose diff is exactly the removal of the duplicated
fields.

Ships as 3.0.0 with a breaking-change changelog entry so Kibana
requires users to acknowledge the change before upgrading. The bundled
New users and groups dashboard already reads user.target.* as of
2.23.0.
@nicholasberlin nicholasberlin added breaking change breaking-change Integration:system System Team:Security-Linux Platform Linux Platform Security team [elastic/sec-linux-platform] labels Jul 24, 2026
@infra-vault-gh-plugin-prod

Copy link
Copy Markdown

Pinging @elastic/sec-linux-platform (Team:Security-Linux Platform)

@nicholasberlin
nicholasberlin force-pushed the breaking/system-auth-remove-user-name-duplication branch from a0ff7c3 to 6b7ceb9 Compare July 24, 2026 17:43
@nicholasberlin

Copy link
Copy Markdown
Contributor Author

The deprecation release was here: #20105 (comment)

July 24, 2026

Not sure how long of a grace period.

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

✅ All changelog entries have the correct PR link.

@elastic-vault-github-plugin-prod

Copy link
Copy Markdown
Contributor

🚀 Benchmarks report

Package system 👍(2) 💚(0) 💔(2)

Expand to view
Data stream Previous EPS New EPS Diff (%) Result
security 1751.31 1053.07 -698.24 (-39.87%) 💔
auth 5154.64 3636.36 -1518.28 (-29.45%) 💔

To see the full report comment with /test benchmark fullreport

@infra-vault-gh-plugin-prod

Copy link
Copy Markdown

💚 Build Succeeded

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

breaking change breaking-change Integration:system System Team:Security-Linux Platform Linux Platform Security team [elastic/sec-linux-platform]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[System] : ECS user field mapping issues in password change, account creation, and group membership events

1 participant