Skip to content

Conditional modal for passkeys platform authenticator - #48512

Merged
ahus1 merged 1 commit into
keycloak:mainfrom
mabartos:KC-29558
Apr 28, 2026
Merged

Conditional modal for passkeys platform authenticator#48512
ahus1 merged 1 commit into
keycloak:mainfrom
mabartos:KC-29558

Conversation

@mabartos

@mabartos mabartos commented Apr 27, 2026

Copy link
Copy Markdown
Member

Other considerations

  • @mposolda mentioned here some other use cases, like behavior in the account console - those can be done as follow-ups
  • as we added the support for different mediations recently ('optional'), it's the right time to be more opinionated, and do these changes, as it should not break any existing stuff
  • not hiding the 'Sign in with passkeys' button for now, even though we know it will probably not succeed (but maybe the user can allow it somehow on their device, so keeping it there now - WDYT?)

Demo:

  • Considering the optional, or required mediation
  • When platform+cross-platform are accepted, the modal is shown
  • When only platform authenticators are accepted, and I don't have any on my computer, the modal is not shown
Screencast.From.2026-04-27.17-01-00.mp4

@keycloak/core-authn @rmartinc @dasniko Could you please check this simple PR? Thanks!

@mabartos
mabartos requested a review from rmartinc April 27, 2026 15:38
@mabartos
mabartos marked this pull request as ready for review April 27, 2026 15:38
@mabartos
mabartos requested review from a team as code owners April 27, 2026 15:38

@keycloak-github-bot keycloak-github-bot Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unreported flaky test detected, please review

@keycloak-github-bot

Copy link
Copy Markdown

Unreported flaky test detected

If the flaky tests below are affected by the changes, please review and update the changes accordingly. Otherwise, a maintainer should report the flaky tests prior to merging the PR.

org.keycloak.testsuite.authz.PolicyEvaluationTest#

Keycloak CI - Base IT (3)

org.opentest4j.AssertionFailedError: expected: <PERMIT> but was: <null>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
...
org.opentest4j.AssertionFailedError: expected: <PERMIT> but was: <null>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
...
org.opentest4j.AssertionFailedError: expected: <PERMIT> but was: <null>
	at org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)
	at org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)
	at org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)
	at org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:182)
...

Report flaky test

@dasniko dasniko left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👍 LGTM, I just added one comment

@mabartos mabartos changed the title Conditional modal for specific passkeys mediation types Conditional modal for passkeys platform authenticator Apr 28, 2026
Closes keycloak#29558

Signed-off-by: Martin Bartoš <mabartos@redhat.com>

@rmartinc rmartinc left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @mabartos! Good addition! LGTM! Re-run the failed tests and it' OK to me.

@ahus1
ahus1 merged commit 46069e2 into keycloak:main Apr 28, 2026
135 of 138 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Best practices for detecting support for Passkeys - support for isUserVerifyingPlatformAuthenticatorAvailable()

4 participants