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

Implement MockInfo #6

Merged
merged 7 commits into from
Jan 14, 2019
Merged

Implement MockInfo #6

merged 7 commits into from
Jan 14, 2019

Conversation

LoneRifle
Copy link
Collaborator

Given the generally long process of onboarding onto MyInfo and its regular maintenance schedules, it is generally helpful to have a mock service that can stand in for the real thing. MockInfo is built on top of MockPass and is backed by a static file generated from the list of known test personas provided by the MyInfo team.

MockInfo includes functionality that mimics the person and person-basic endpoints and the typical consent flow for a user. It features both TUO authorization available to government systems and token-based authorization required for most other applications.

See commits for further details

* Add the test MyInfo personas to the assertions module
* Expose `/myinfo/person-basic/:uinfin/`, which looks up the identifier
  amongst the known personas and returns the corresponding MyInfo

TODO:
* person endpoint
* limiting what is returned to only requested attributes
* TUO authn/authz
* Bring in lodash as a direct dependency
* myinfo.json - rework to include both personas and valid fields
* Add `/person` and rewrite `/person-basic` endpoints, using a common
  template function that checks that requested fields are allowed, and
  that the requested uinfin is present
* Add the means to reconstruct the base string used for signature
* Parse the authz header from `/person-basic` requests, and feed the
  extracted fields (including the signature) into a verify function.
  If verification fails, respond 403 and assume the service has
  "not registered"
@LoneRifle LoneRifle changed the title [WIP] Implement MockInfo Implement MockInfo Jan 14, 2019
@LoneRifle LoneRifle merged commit bbe83b0 into master Jan 14, 2019
@LoneRifle
Copy link
Collaborator Author

TODO - non-TUO workflow

@LoneRifle LoneRifle deleted the mockinfo branch January 14, 2019 08:55
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.

1 participant