A center member is authorized as a user of the NACC Directory by the Center Administrator. In this process, the administrator adds a center member to the NACC Directory in REDCap and authorizes their access to the NACC Data Platform. Authorization initiates a Data Platform Access survey that prompts the user to provide the email to be used for authentication.
If this diagram is not rendered properly, view this document in the repository
sequenceDiagram
actor admin as Center<br/>Admin
actor member as Center<br/>Member
participant directory as NACC<br/>Directory
admin ->> directory: authorize
directory -) member: access survey email
member ->> directory: auth email
The directory is pulled nightly to Flywheel using the Directory Pull gear. This gear writes a file with user information in an admin project on Flywheel.
If this diagram is not rendered properly, view this document in the repository
sequenceDiagram
scheduler ->> puller: initiate
note right of scheduler: nightly
participant puller as Directory Pull
participant directory as NACC<br/>Directory
puller ->> directory: get user information
puller ->> Flywheel: write directory user file
Updates to the NACC directory user file trigger a gear rule that runs the user management gear.
If this diagram is not rendered properly, view this document in the repository
sequenceDiagram
Rule ->> usermgmt: initiate
note right of Rule: update to directory user file
participant usermgmt as User<br/>Management
usermgmt ->> Flywheel: pull directory users
loop each authorized user
usermgmt ->> CoManage: get by email
actor member as Center<br/>Member
alt user not in registry
usermgmt ->> CoManage: create
usermgmt -) member: claim email
else user is claimed in registry
usermgmt ->> Flywheel: find by registry ID
alt if user not in Flywheel
usermgmt ->> Flywheel: create
usermgmt -) member: notification email
end
usermgmt ->> Flywheel: set user roles
else is unclaimed for more than a week
usermgmt -) member: claim reminder email
end
end