Skip to content

✨ Keycloak - Map multiple IdP users to a single user via custom multi-value attribute#2633

Merged
Findeton merged 1 commit into
release/10.0from
feat/meta-11932/release/10.0
May 6, 2026
Merged

✨ Keycloak - Map multiple IdP users to a single user via custom multi-value attribute#2633
Findeton merged 1 commit into
release/10.0from
feat/meta-11932/release/10.0

Conversation

@Findeton
Copy link
Copy Markdown
Contributor

@Findeton Findeton commented May 6, 2026

Parent issue: https://github.com/sequentech/meta/issues/11932

  • Create new Maven module idp-linking-authenticator with pom.xml
  • Implement CustomAttributeIdpLinkingAuthenticator extending AbstractIdpAuthenticator
  • Implement CustomAttributeIdpLinkingAuthenticatorFactory with configurable parameters
  • Write 22 unit tests covering all scenarios (zero/one/multiple matches, all claim types, edge cases)
  • Update parent pom.xml to include new module
  • Update Dockerfile.keycloak to copy new JAR
  • Add Docusaurus documentation for the feature
  • Fix: shorten PROVIDER_ID from custom-attribute-idp-linking-authenticator (42 chars) to idp-linking-authenticator (25 chars) — Keycloak's AUTHENTICATION_EXECUTION.AUTHENTICATOR column is character varying(36)

…-value attribute (#2598)

- [x] Create new Maven module `idp-linking-authenticator` with pom.xml
- [x] Implement `CustomAttributeIdpLinkingAuthenticator` extending
`AbstractIdpAuthenticator`
- [x] Implement `CustomAttributeIdpLinkingAuthenticatorFactory` with
configurable parameters
- [x] Write 22 unit tests covering all scenarios (zero/one/multiple
matches, all claim types, edge cases)
- [x] Update parent `pom.xml` to include new module
- [x] Update `Dockerfile.keycloak` to copy new JAR
- [x] Add Docusaurus documentation for the feature
- [x] Fix: shorten PROVIDER_ID from
`custom-attribute-idp-linking-authenticator` (42 chars) to
`idp-linking-authenticator` (25 chars) — Keycloak's
`AUTHENTICATION_EXECUTION.AUTHENTICATOR` column is `character
varying(36)`

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: xalsina-sequent <173030604+xalsina-sequent@users.noreply.github.com>
Co-authored-by: Xavier Alsina <xavier.alsina@sequentech.io>
@Findeton Findeton added the enhancement New feature or request label May 6, 2026
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 6, 2026


Thank you for your submission, we really appreciate it. Like many open-source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution. You can sign the CLA by just posting a Pull Request Comment same as the below format.


Thank you for your contribution! Before we can merge this PR, we need you to sign our Contributor License Agreement (CLA).

To sign the CLA, please comment on this PR with:
I have read the CLA Document and I hereby sign the CLA

This is a one-time requirement. Once you have signed, all future contributions will be covered.

You can read the full CLA document here: https://github.com/sequentech/step/blob/main/.github/cla/CLA.md


You can retrigger this bot by commenting recheck in this Pull Request. Posted by the CLA Assistant Lite bot.

@Findeton Findeton merged commit 48fc2e3 into release/10.0 May 6, 2026
18 of 19 checks passed
@Findeton Findeton deleted the feat/meta-11932/release/10.0 branch May 6, 2026 23:16
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 6, 2026

PR Preview Action v1.8.1
Preview removed because the pull request was closed.
2026-05-06 23:23 UTC

Findeton added a commit that referenced this pull request May 7, 2026
…-value attribute (#2633) (#2649)

Parent issue: sequentech/meta#11932

- [x] Create new Maven module `idp-linking-authenticator` with pom.xml
- [x] Implement `CustomAttributeIdpLinkingAuthenticator` extending
`AbstractIdpAuthenticator`
- [x] Implement `CustomAttributeIdpLinkingAuthenticatorFactory` with
configurable parameters
- [x] Write 22 unit tests covering all scenarios (zero/one/multiple
matches, all claim types, edge cases)
- [x] Update parent `pom.xml` to include new module
- [x] Update `Dockerfile.keycloak` to copy new JAR
- [x] Add Docusaurus documentation for the feature
- [x] Fix: shorten PROVIDER_ID from
`custom-attribute-idp-linking-authenticator` (42 chars) to
`idp-linking-authenticator` (25 chars) — Keycloak's
`AUTHENTICATION_EXECUTION.AUTHENTICATOR` column is `character
varying(36)`

---------

Co-authored-by: Copilot <198982749+Copilot@users.noreply.github.com>
Co-authored-by: xalsina-sequent <173030604+xalsina-sequent@users.noreply.github.com>
Co-authored-by: Xavier Alsina <xavier.alsina@sequentech.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants