Skip to content
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

Multitenancy support for OID4VC plugin #1161

Open
pradeepp88 opened this issue Oct 28, 2024 · 3 comments · May be fixed by #1214
Open

Multitenancy support for OID4VC plugin #1161

pradeepp88 opened this issue Oct 28, 2024 · 3 comments · May be fixed by #1214

Comments

@pradeepp88
Copy link

Currently, the OID4VC plugin doesn't support multitenancy, and all operations are saved in the base wallet. When we secure the admin API, the supported credentials data is not passed on to the .well-known endpoint for the OID4VCI server.

We have reviewed the initial design options and have started work on enabling multitenancy for the OID4VC plugin.

The following changes are proposed:

  • Pass wallet information to the OID4VC server. This can be done by:
    • Creating a separate sub-path for each wallet and hosting all endpoints within that sub-path, e.g., <OID4VCI-Endpoint>/<wallet-id>, using it for identification; or
    • Passing the wallet ID as a request parameter, e.g., <OID4VCI-Endpoint>/.well-known/openid-credential-issuer?<wallet-id>.
  • Use the sub-path or request parameter to pass wallet information when issuing the credential offer.

We’re opening this issue to gather feedback from maintainers and other OID4VC developers to finalize the design and continue the work. cc: @dbluhm, @jamshale

@dbluhm
Copy link
Contributor

dbluhm commented Oct 28, 2024

https://openid.net/specs/openid-4-verifiable-credential-issuance-1_0-ID1.html#section-11.2.2

Credential Issuers publishing metadata MUST make a JSON document available at the path formed by concatenating the string /.well-known/openid-credential-issuer to the Credential Issuer Identifier. If the Credential Issuer value contains a path component, any terminating / MUST be removed before appending /.well-known/openid-credential-issuer.

Any tenant information must be passed as a path parameter and be included in the issuer url. To obtain the openid configuration, the well know path is appended to the issuer value.

@dbluhm
Copy link
Contributor

dbluhm commented Nov 4, 2024

@pradeepp88 please keep us posted on your progress. We have some issues in the plugin that need to be addressed; keeping us up on your status will hopefully help ensure a clean merge.

@pradeepp88 pradeepp88 linked a pull request Nov 20, 2024 that will close this issue
@pradeepp88
Copy link
Author

pradeepp88 commented Nov 20, 2024

Hi @dbluhm I was able to get the wallet_id into the oid4vc issuer url as a subpath and use that to extract the tenant profile. I have created a Draft PR #1214 of the work done so far. Please review and add your comments - I am updating the integration tests now, if the design is ok, I can finalize the changes and make the PR ready for review.

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 a pull request may close this issue.

2 participants