Background

Synapse allows the option of user anonymity.  Email addresses are hidden.  Completing ones user profile (name, title, organization, bio) is completely optional.  However to allow  to access certain sensitive data we must have more complete information about the user requesting access.  It will be the job of the Synapse Access and Compilance Team to "verify" a user, based on reviewing information beyond that needed to create an account in Synapse.  The approach is:

 

Notes

In the proposed approach there's no batching of verification. there's no dashboard to show who is / isn't verified.  The information for each user is on a page in Synapse.  The work list is the ACT email inbox.

 

Workflow details


Future:  Need TOU AR gated on being certified and verified.

Open questions

does verification require renewal after a set time? NO

does ACT need to 'update' verification?  I.e. is it possible to verify but later to need to verify again to capture updated information? YES
what sort of review is required later? E.g. will ACT need later to review the information used to decide to verify someone? Yes need to audit re-verify with new information (newly submitted document)

Does the ACT need support for revoking verification (e.g. if the user deleted their identifying info from their user profile)? Yes, but not for the example given.

Do you need to compare the info at the time of verification to the info at the current time? Don't need to do it automatically.

Portal changes

On user profile page:

Entity page:

 

Services

DescriptionIntended User / AuthorizationURIMethodRequest ParametersRequest BodyResponse Body
Retrieve the information used to verify a user.ACT member/user/{id}/verificationInfoGET----VerificationBundle
Verify a user.ACT member/user/{id}/verificationPOSTverificationBundleHash--VerificationBundle
Retrieve verification infoACT member/user/{id}/verificationGET----VerificationBundle
Remove verificationACT member/user/{id}/verificationDELETE------
Get UserBundlePublic/user/{id}/userBundleGET----UserBundle
Add ORCID to accountany authorized user/auth/orcidPOST--

OAuthValidationRequest

ORCID

 

UserBundle:

- isCertified
- isVerified
- hasSignedTOU
- isACTMember
- isAdmin

- userProfile

- ORCID

 

 

VerificationBundle:

- isCertified
- isVerified
- hasSignedTOU

- first name

- last name

- organization

- email addresses

- ORCID

- verificationBundleHash