-
Notifications
You must be signed in to change notification settings - Fork 28
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 #1214
Multitenancy Support for OID4VC Plugin #1214
Conversation
Signed-off-by: Pradeep Kumar Prakasam <pradeep.prakasam@ontario.ca>
Tagging @mepeltier in for a first round of reviews. Thanks @pradeepp88! |
Signed-off-by: Micah Peltier <micah6_8@yahoo.com>
Signed-off-by: Micah Peltier <micah6_8@yahoo.com>
Some fixes have been added here: pradeepp88#1 |
…upport OID4VC Multitenancy Fixes and Demo Changes
@pradeepp88 I know you're planning on presenting to the ACA-PUG here soon, but in the meantime, is there anything else that's needed here? Anything we can help with? |
Signed-off-by: Pradeep Kumar Prakasam <pradeep.prakasam@ontario.ca>
269fef2
to
2ff7707
Compare
@mepeltier - I have updated the unit tests for the public routes to ensure all tests pass without modifying the As discussed, I will provide a demo during tomorrow's meeting. Please review the changes and share your feedback. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good to me
Multitenancy Support for OID4VC Plugin
This PR closes #1161.
Summary of Proposed changes to Support Multitenancy:
Multitenant Support in
oid4vci_server.py
wallet_id
is provided in the request, the wallet profile is retrieved and injected into the context using thecontext.inject_or(BaseMultitenantManager)
.wallet_key
is available in the wallet record of theroot_profile
. It is used along with thewallet_id
to extract the wallet profile, which is then injected into the metadata. This logic is consistent with the approach currently used by theacapy_agent
admin server to extract the profile from the authentication token.Subpath Addition in
public_routes.py
/tenant/{wallet_id}
withwallet_id
as a path parameter for all public routes when multitenancy is enabled. Otherwise, the routes remain unchanged.Updates to
credentials_issuer_metadata
Endpointcredentials_issuer_metadata
endpoint inpublic_routes.py
to reflect the multitenancy changes.Updates to
get_cred_offer
Endpointget_cred_offer
endpoint inroutes.py
to support the multitenancy updates.Note:
These changes aim to enable multitenancy in the OID4VC plugin with minimal modifications. Feedback from the community on this proposed design would be greatly appreciated.