437 Commits
Author SHA1 Message Date
Martin Kanis bef2a5e9e9 SCIM: PATCH operations list has no size limit — missing maxOperations enforcement
Closes #50475

Signed-off-by: Martin Kanis <mkanis@ibm.com>
2026-07-21 14:29:20 +02:00
Sebastian Schuster 7c5aaaa013 [FGAPv2] Clarify that manage and manage-members for users allow creating users
Closes #50877

Signed-off-by: Sebastian Schuster <sebastian.schuster@bosch.com>
2026-07-16 19:56:22 +02:00
5f1aef7fd6 Add a section on Blind SSRF via DNS rebinding to the docs
Closes #48448

Signed-off-by: Tomas Kyjovsky <tkyjovsk@ibm.com>
Signed-off-by: Tomáš Kyjovský <1867605+tkyjovsk@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@gmx.net>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@gmx.net>
2026-07-16 09:47:14 +02:00
Pedro Igor 00a6d5ee0b Make sure admin role checks are based on the actual roles granted to the user
Closes #50445

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2026-07-09 15:32:49 +02:00
Martin Bartoš d565d89273 First-match prefix resolution allows permissive scope to shadow stricter scope (#50683)
Closes #50469

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
2026-07-09 10:09:53 +02:00
Martin Bartoš 56e41cb4be Mention use of email address for username and delegation types in docs (#50652)
Closes #50651

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
2026-07-09 09:58:27 +02:00
Romain Buisson 1d320cb077 Fix incorrect permission name (#50706)
The permission name here is incorrect.
Should be "Allow managing test-admins"

Signed-off-by: Romain Buisson <rbuisson@users.noreply.github.com>
2026-07-08 21:37:20 +00:00
Martin Bartoš 9ebce0ea42 Enable passkeys configuration does not follow best UX (#50593)
* Enable passkeys configuration does not follow best UX

Closes #48445

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

* Apply suggestions from the review

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

* Apply suggestion from review

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

---------

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
2026-07-07 16:11:55 +02:00
jimmychakkalakal 73fc9be7ce Add OID4VCI credential refresh interval configuration (#50424)
* Add OID4VCI credential refresh interval configuration

Adds vc.refresh_interval_in_seconds attribute (default 7 days) to control VC expiration independently from credential lifetime, enabling periodic credential refresh.

Closes #49509

Signed-off-by: Jimmy Chakkalakal <jimmy.chakkalakal@ibm.com>

* Worked on reviewers comments:
Update client scope screenshot-oid4vci-scope-form.png
Add link to client scope in release notes 26_7_0.adoc

Signed-off-by: Jimmy Chakkalakal <jimmy.chakkalakal@ibm.com>

---------

Signed-off-by: Jimmy Chakkalakal <jimmy.chakkalakal@ibm.com>
2026-07-07 15:56:18 +02:00
Ricardo Martin 9553d89a02 Move step-up authentication for saml feature to supported
Closes #46543

Signed-off-by: rmartinc <rmartinc@redhat.com>
2026-07-03 18:21:23 +02:00
Ricardo Martin 3b145ede25 Little improvements in the step-up authentication for SAML
Closes #50466

Signed-off-by: rmartinc <rmartinc@redhat.com>
2026-07-02 15:06:51 +02:00
Martin Bartoš 46ad7bd491 Control repeatability of parameterized client scopes (#50433)
Closes #50432

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
2026-07-02 07:58:38 +02:00
Ricardo Martin 9697e1aa5d Restrict java keystore files to a realm folder
Closes CVE-2026-9083
Closes #50345

Signed-off-by: rmartinc <rmartinc@redhat.com>
2026-06-30 10:10:02 +02:00
330779014a Deprecate the Twitter Identity Broker
Fix #44013

The Twitter broker relies on the unmaintained twitter4j library (no release in several years) and Twitter's legacy OAuth 1.0a endpoints. twitter4j uses Java serialization to record its state, which recurs as noise in security reviews.

This deprecates the broker behind a disabled-by-default feature (twitter-broker), mirroring the Instagram broker deprecation. As Twitter(X) now supports OAuth 2.0, the generic OAuth v2 identity provider can be used as a replacement, and the admin guide documents the migration.

Signed-off-by: Bapuji Koraganti <bapuk.2008@gmail.com>
Signed-off-by: Bapuji Koraganti <34816445+bkoragan@users.noreply.github.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@gmx.net>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@gmx.net>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2026-06-29 15:40:13 +02:00
Giuseppe Graziano 7565377204 token exchange with lightweight access token
Closes #50248

Signed-off-by: Giuseppe Graziano <g.graziano94@gmail.com>
2026-06-25 11:43:05 +02:00
Pedro Igor 319bb62975 Enforce audience check when authorizing using a bearer token
Closes #50283

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2026-06-24 16:31:55 +02:00
Martin Kanis d2fe07f941 SCIM: Prevent admin users to be modified (#49892)
* SCIM: Prevent admin users to be modified

Closes #48636

Signed-off-by: Martin Kanis <mkanis@ibm.com>
2026-06-24 07:45:28 -03:00
Peter Zaoral 2c1fad5d2b Document querying syntax (#50021)
* Document querying syntax

Closes #49724

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>

* Document querying syntax

Closes #49724

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>

* Document querying syntax

Closes #49724

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>

* Document querying syntax

Closes #49724

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>

---------

Signed-off-by: Peter Zaoral <pzaoral@redhat.com>
2026-06-23 19:39:39 +02:00
forkimenjeckayang 89090a95a4 [OID4VCI] Update proof documentation for trust-material identity providers (#50157)
closes #49716


Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
2026-06-23 15:15:59 +02:00
Pedro Igor 44e2fa4cfc Public clients not allowed to access the SCIM API
Closes #50222

Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2026-06-23 13:45:13 +02:00
Stefan Guilhen 3f334840ff Document WorkflowProviderEvent types for ProviderEventListener implementations
Closes #49449

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2026-06-19 10:18:08 -03:00
Martin Bartoš e878757adc Client Secret Rotation docs incorrectly mark feature as experimental instead of preview (#50140)
Closes #50139

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
2026-06-19 14:11:25 +02:00
Martin BartošandRicardo Martin 7044f1a5b5 Documentation for parameterized client scopes (#50037)
* Documentation for token scopes

Closes #49607

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

* Update docs/documentation/server_admin/topics/clients/con-parameterized-client-scopes.adoc

Co-authored-by: Ricardo Martin <rmartinc@redhat.com>
Signed-off-by: Martin Bartoš <mabartos@redhat.com>

---------

Signed-off-by: Martin Bartoš <mabartos@redhat.com>
Co-authored-by: Ricardo Martin <rmartinc@redhat.com>
2026-06-19 10:26:25 +02:00
Ingrid Kamga c0d40a0538 [OID4VCI] Replace realm options Trusted Key IDs and Trusted Keys (JSON) with trust-material IdPs configured on the client (#50129)
Closes #48414


Signed-off-by: Ingrid Kamga <Ingrid.Kamga@adorsys.com>
2026-06-19 10:09:37 +02:00
forkimenjeckayang b745dfa51a [OID4VCI] Documentation for OID4VCI credential request (#50060)
closes #49504



Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
2026-06-18 12:53:21 +02:00
forkimenjeckayang 2752294ec8 Documentation of client settings
closes #49502

Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
2026-06-16 18:37:25 +02:00
mposolda e56d25d53c [OID4VCI] release notes for 26.7.0
closes #50035

Signed-off-by: mposolda <mposolda@gmail.com>
2026-06-16 18:32:38 +02:00
Yike Gao e7f01579fe Rename discoverable key as discoverable credential (#50016)
Closes #50015

Signed-off-by: Yike Gao <yikegao8@gmail.com>
2026-06-16 12:48:45 +02:00
Awambeng Rodrick 501b1c0a66 docs: add OID4VCI client scope and protocol mapper Admin Console UI configuration guide
Closes #49499
Closes #49501

Signed-off-by: Awambeng Rodrick <awambengrodrick@gmail.com>
2026-06-16 08:51:02 +02:00
Yike Gao 31cf0d50b2 Add residentKey WebAuthn policy option. Closes #42513 (#49687)
Signed-off-by: Yike Gao <yikegao8@gmail.com>
2026-06-15 13:19:29 +02:00
Stefan Guilhen 2e29fe2ac1 Review permission model to access the SCIM APIs
- access to /ServiceProviderConfig, /ResourceTYpes and /Schemas now require only query-users or query-groups.

Closes #47820

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2026-06-12 12:14:05 -03:00
Pedro Igor 6d37e46df6 Minor suggestions to the doc format
Signed-off-by: Pedro Igor <pigor.craveiro@gmail.com>
2026-06-12 09:50:52 -03:00
Stefan Guilhen 171a5846a7 Add SCIM API documentation to server admin guide
Closes #47604

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2026-06-12 09:50:52 -03:00
Marek Posolda ff726edccb Documentation for client policies in identity broker API v2 requests. Conditions evaluation description (#49795)
closes #49705

Signed-off-by: mposolda <mposolda@gmail.com>
2026-06-10 15:30:30 +02:00
Awambeng Rodrick c41baca80e docs(oid4vci): update realm configuration docs for Admin Console UI
Closes #49497

Signed-off-by: Awambeng Rodrick <awambengrodrick@gmail.com>
2026-06-09 13:30:18 +02:00
mposolda 58533d1fa9 Link server-admin sections for call identity broker APIs with the related sections from server-development guide
closes #49704

Signed-off-by: mposolda <mposolda@gmail.com>
2026-06-08 12:24:06 +02:00
Awambeng Rodrick 5274246ade docs: add OID4VCI introduction and flow diagrams to credential issuer configuration documentation
Closes #49494

Signed-off-by: Awambeng Rodrick <awambengrodrick@gmail.com>
2026-06-05 19:58:09 +02:00
rameshkumarkoyya cff5cef90f [OID4VCI] Documentation for proofs (#49560)
Closes #49505


Signed-off-by: Apple <apple@Apples-MacBook-Pro.local>
2026-06-05 12:09:13 +02:00
Ricardo Martin af717f7045 Check CA subject DN in X.509 client authenticator (#48550)
* Initial draft to check CA subject DN in X.509 client authenticator
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* Add the test to the FIPS suites and doc changes
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* Delete AbstractMutualTLSClientTest to move the old test
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* Move the old test to the new test suite
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* final test changes
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* First round of review changes.
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

* Add a client executor to add default CA subject DN to client registration
Closes #48412

Signed-off-by: rmartinc <rmartinc@redhat.com>

---------

Signed-off-by: rmartinc <rmartinc@redhat.com>
2026-06-05 08:40:26 +02:00
Stefan Guilhen 251281dae7 Add section about LDAP failover configuration to the documentation
Closes #42883

Signed-off-by: Stefan Guilhen <sguilhen@redhat.com>
2026-06-03 23:48:07 -03:00
andymunroandAlexander Schwartz e25746ef79 Fix Themes cross-reference
Closes #49222

Signed-off-by: AndyMunro <amunro@redhat.com>
Signed-off-by: Alexander Schwartz <alexander.schwartz@ibm.com>
Co-authored-by: Alexander Schwartz <alexander.schwartz@ibm.com>
2026-05-29 11:07:43 +02:00
Vlasta Ramik ba23dd1c24 Support mapping existing Realm and Client roles to Organization Groups (#48670)
Closes #47327

Signed-off-by: vramik <vramik@redhat.com>
2026-05-28 13:33:32 +02:00
Alex Szczuczko d5066509a2 Clarify documentation of OS-level dependencies for Kerberos (#45764)
Closes #32527

Signed-off-by: Alex Szczuczko <aszczucz@redhat.com>
2026-05-28 10:07:19 +02:00
Angel-Tornero 577bddb8e5 Fix broken SAML 2.0 specification links in documentation
Closes #48611

Signed-off-by: Angel-Tornero <angeltornerohdez@gmail.com>
2026-05-25 14:42:22 +02:00
Thomas DELORGE a988875ac4 docs(workflows): fix offboarding example revoke-role role list format
Closes #49140

The revoke-role step expects multivalued role names, not a
comma-separated string.

Signed-off-by: Thomas DELORGE <thomas.delorge@orbeet.io>
2026-05-20 23:31:45 +02:00
Giuseppe Graziano a1405663f7 Token introspection now validates audience claim. UserInfo endpoint rejects lightweight access tokens.
Closes #49113

Signed-off-by: Giuseppe Graziano <g.graziano94@gmail.com>
2026-05-20 18:23:06 +02:00
vramik 10d50847df Improve documentation for cases when migrating from FGAP:V1 to V2
Closes #48588

Signed-off-by: vramik <vramik@redhat.com>
2026-05-11 08:10:39 -03:00
Faseela K 26c2a9e3ed pre-compute password denylist Bloom filter to speed up server startup
Fixes #47356

Signed-off-by: Faseela K <faseela.k@est.tech>
2026-05-07 16:01:12 +02:00
Sar 263d44be88 Changes to address Org subdomain matching (#45190)
Signed-off-by: sar <sar.haidar@gmail.com>
2026-05-05 08:53:15 +02:00
Sven-Torben Janus 67ef87bd21 Make OrganizationGroupMembershipMapper claim name configurable (#47852)
* Make OrganizationGroupMembershipMapper claim name configurable

The OrganizationGroupMembershipMapper introduced in 26.6.0 hardcoded
the token claim name to "organization", unlike OrganizationMembershipMapper
which already exposes the claim name as a configurable property.

- Add TOKEN_CLAIM_NAME config property to OrganizationGroupMembershipMapper
  via OIDCAttributeMapperHelper.addTokenClaimNameConfig()
- Override getEffectiveModel() to default the claim name to
  OAuth2Constants.ORGANIZATION when not set, preserving backward
  compatibility for existing mapper configurations
- Set TOKEN_CLAIM_NAME default in the static create() factory method
- Refactor OIDCAttributeMapperHelper.getOrInitializeOrganizationClaimAsMap()
  to accept a ProtocolMapperModel instead of a raw String, delegating
  to mapClaim() for correct claim placement (including nested path support)

Closes #47851

Signed-off-by: Sven-Torben Janus <sven-torben.janus@conciso.de>

* Fix nested claim path read and add custom claim name tests

The read side of getOrInitializeOrganizationClaimAsMap was doing a flat
Map.get() on the dotted claim name, while the write side (mapClaim) already
creates a nested structure by splitting on dots. This caused the group mapper
to find nothing when the claim name contained a dot, overwriting the
membership data written by OrganizationMembershipMapper.

Fix by splitting the claim path via splitClaimPath() and traversing the
nested map with a new private getNestedClaimValue() helper in
OIDCAttributeMapperHelper. The helper belongs there rather than in JsonUtils
because it operates on Map<String,Object>, not JsonNode.

Also add integration tests covering:
- Custom flat claim name ("my_orgs") for both OrganizationMembershipMapper
  and OrganizationGroupMembershipMapper, verifying the claim appears at the
  configured name and not at "organization"
- Dotted claim name ("custom.org") for OrganizationGroupMembershipMapper,
  verifying the token contains nested otherClaims["custom"]["org"] and that
  group composition is preserved

Signed-off-by: Sven-Torben Janus <sven-torben.janus@conciso.de>

---------

Signed-off-by: Sven-Torben Janus <sven-torben.janus@conciso.de>
2026-05-04 16:30:59 +02:00