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

Anoncreds - support for anoncreds and askar wallets concurrently #2822

Merged
merged 2 commits into from
Mar 21, 2024

Conversation

jamshale
Copy link
Contributor

@jamshale jamshale commented Mar 5, 2024

Implements #2807.

  1. Enables schema, cred_def and revocation endpoints for both askar and askar-anoncreds in multitenant mode. All anoncreds endpoints are prefixed with /anoncreds/. For some api marshmallow schema objects they were the same name as the existing objects which displayed a warning. I simply appended Anoncreds to the end of these objects that had conflicts.
  2. Returns 403 errors when using the wrong endpoints with message. I thought about trying to do something fancier like a middleware, but decided because it was only a small subset that it would be easier to just add a method to the top of the endpoints. In anoncreds some of the endpoints already had a profile type check and through a ValueError. I did handle this, but for consistency and to prevent unrelated errors I still added the profile check method to the top of the method.
  3. Prevent subwallets from being created that are a different type then the base wallet. For example, in the case of having the base wallet askar and trying to create a askar-anoncreds wallet it will throw a 403 and have a message. If the wallet type is empty is defaults to the base wallet.
  4. Prevents wallets from being started as an askar wallet and then trying to change the config to askar-anoncreds by using a similar flow as versioning. If the wallet-type record is empty and there is a version record (existing wallet) it will assume the wallet is askar. I'm still unsure if anything needs to happen with indy wallets. I'm having trouble installing the library to test.
  5. Updates integration tests and runs a few of the tests that touch most of the effected endpoints in multitenancy mode.
  6. Updates the faber agent in the demos.

@jamshale jamshale changed the title WIP Anoncreds - support for anoncreds and askar wallets concurrently Mar 5, 2024
@jamshale jamshale force-pushed the feat/2807 branch 3 times, most recently from 7097fd3 to 2748a17 Compare March 6, 2024 16:36
@jamshale jamshale marked this pull request as ready for review March 6, 2024 16:36
@jamshale jamshale requested review from ianco and dbluhm March 6, 2024 16:56
@jamshale jamshale marked this pull request as draft March 6, 2024 21:38
@ianco
Copy link
Contributor

ianco commented Mar 7, 2024

4. I'm still unsure if anything needs to happen with indy wallets. I'm having trouble installing the library to test.

I don't think we need to do anything with Indy wallets, other than document that if someone is still running an Indy wallet they need to upgrade to Askar before upgrading ton AnonCreds. For multitenancy there is no "run Indy and Aksar in parallel" so they will need to upgrade all Indy tenants to Askar.

@jamshale jamshale force-pushed the feat/2807 branch 2 times, most recently from d709f2f to b155cc7 Compare March 18, 2024 15:22
Copy link

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
No data about Coverage
No data about Duplication

See analysis details on SonarCloud

@jamshale jamshale marked this pull request as ready for review March 21, 2024 15:11
@jamshale jamshale merged commit d625786 into openwallet-foundation:main Mar 21, 2024
8 checks passed
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.

2 participants