Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • P principal-manager
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Package Registry
    • Container Registry
    • Infrastructure Registry
  • Monitor
    • Monitor
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Gaia-X
  • Organization Credential ManagerOrganization Credential Manager
  • principal-manager
  • Merge requests
  • !7

Mapping of UserInfo to Verifiable Credential

  • Review changes

  • Download
  • Email patches
  • Plain diff
Merged Boyan Tsolov requested to merge feature/oidc into develop Jun 23, 2022
  • Overview 0
  • Commits 12
  • Pipelines 9
  • Changes 9

Supposing we have an OIDC provider and a front end for the user to acquire his access token for us, we can fetch his userInfo and map it to a Verifiable Credential, which will then be issued.

Procedure:

  • Endpoint:
  1. expect access token and userinfo URL
  2. fetch userinfo using token and url
  3. create connection (invitation url, connection id) by calling connection manager
  4. save userinfo and connection id to DB (temporarily)
  5. return invitation url and userInfo preview from endpoint (this will be displayed in the PORTAL)
  • Listener:
  1. Listen for connectionStateChanged event
  2. when complete and matching some qualifier (contains userinfo or a tag in the db for this type of connections) map the userinfo from db to a VC
  3. create schema based on keys of userinfo
  4. create credDef
  5. issue VC by calling attestation manager
  6. delete record from DB

Possible issues:

  • what happens when QR code is not scanned before connection is deleted and how do we let user know
  • invalidation of access token possible
Edited Jun 28, 2022 by Boyan Tsolov
Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: feature/oidc