Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Support for standard Token-Exchange #31546

@thomasdarimont

Description

@thomasdarimont

Description

This epic describes all necessary issues to make token-exchange fully supported.

Discussion

#26502

Issues

All issues in area/token-exchange should be reviewed and moved to corresponding tasks

Motivation

Keycloak has had the OAuth RFC 8693: Token Exchange feature for many years; however, since its inception, it has remained a technology preview feature. Following many requests from the community and customers, the Keycloak team is committed to getting token exchange out of preview.

Scope of the work

The initial scope is to have support for internal/internal token exchange. We might have follow-up epics for support other use-cases (like external to internal, internal to external, impersonation use-cases like direct naked impersonation etc).

Standard token exchange

These are tasks to make sure that Keycloak is compliant with the token exchange specification, which is in current Keycloak documentation referred as internal to internal token exchange. Also here are tasks to make sure that internal-internal token exchange could be supported by default. Which means:

  • Good documentation and testing coverage
  • Threat modeling and security (including the fine grained control over what is permitted or not)
  • Fixing/implement some fundamental gaps in the current implementation.

Required for supported token-exchange

This tasklist contains tasks, which are minimum needed for supported standard token-exchange. So far, it is planned to implement them asap (ideally Keycloak 26.2). The "optional" tasks are not included here.

See this document for the discussions and context about the tasks for standard token-exchange for Keycloak 26.2

Other issues related to standard token-exchange

This list contains tasks, enhancements and reported bugs, which are also related to standard token-exchange. ATM those are not considered "blockers" for supported standard token-exchange. After we finish the tasks from the list above, we may create follow-up epic and add the tasks from the list below to that epic. Before that, we may need to triage those again as:

  • Some of those issues might be addressed by the other tasks from the list above. In this case, we can close them.
  • Some of those issues might be addressed as a follow-ups (and hence should be moved to the new epic)
  • Some of those issues might be addressed in a bit different way than described in the issue (due token-exchange refactoring). In this case, we can move them to the new epic with some updated description
  • Some of those issues might be unsupported and hence we might close them as "won't do"

GH Issues:

Federated token exchange

Tasks related to external-internal or internal-external token exchange where integration with some IDP is involved.

Dedicated epics created for the federated-token exchange support:

Impersonation

Dedicated epic created for the subject-impersonation support: #38336

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions