8000 [OID4VCI] : Update Credential Issuer Metadata Model for OID4VCI Draft-15 by forkimenjeckayang · Pull Request #40749 · keycloak/keycloak · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

[OID4VCI] : Update Credential Issuer Metadata Model for OID4VCI Draft-15 #40749

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

forkimenjeckayang
Copy link
Contributor

Description

This pull request addresses the ticket to update the Credential Issuer Metadata model to align with the OpenID for Verifiable Credential Issuance (OID4VCI) specification draft-15, as per Section 11.2. The changes ensure the CredentialIssuer model supports all required and optional metadata parameters introduced or modified in draft-15.

Changes Made

  • Added support for new optional metadata parameters in CredentialIssuer.java:
    • deferred_credential_endpoint: URL for the Deferred Credential Endpoint.
    • credential_response_encryption: Object with alg_values_supported, enc_values_supported, and encryption_required to specify encryption support for Credential Responses.
    • batch_credential_issuance: Object with batch_size to support batch issuance of credentials.
    • signed_metadata: String for a signed JWT containing metadata claims.
  • Updated the display field to be a List<DisplayObject> instead of a single DisplayObject to support multiple language-specific display properties, as allowed by the specification.
  • Added nested classes CredentialResponseEncryption and BatchCredentialIssuance to represent the respective metadata objects, with appropriate Jackson annotations for JSON serialization.
  • Maintained existing fields (credential_issuer, credential_endpoint, nonce_endpoint, authorization_servers, notification_endpoint, credential_configurations_supported) .

Testing

  • Confirmed that the changes do not break existing functionality related to credential issuance or metadata retrieval.

Closes #39290

Checklist

  • Code updated to align with OID4VCI draft-15.
  • Existing functionality preserved.

Closes keycloak#39290

Signed-off-by: forkimenjeckayang <forkimenjeckayang@gmail.com>
@mposolda mposolda self-assigned this Jul 7, 2025
@mposolda
Copy link
Contributor
mposolda commented Jul 7, 2025

Anyone from our community with the oid4vci insight available for reviewing this PR please?
CC @Captain-P-Goldfish @francis-pouatcha @IngridPuppet @tnorimat @thomasdarimont

Copy link
Contributor
@tnorimat tnorimat left a comment

Choose a reason for hiding this comment

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

LGTM, but it might be better if you could add tests for check the changes, for example, by OID4VCIssuerWellKnownProviderTest the same as OIDCWellKnownProviderTest and OAuth2WellKnownProviderTest extending AbstractWellKnownProviderTest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[OID4VCI] Clean up and update the Credential Issuer Metadata model
3 participants
0