DMPRoadmap / roadmap

DCC/UC3 collaboration for a data management planning tool
MIT License
102 stars 109 forks source link

Add ORCID to user profile #42

Closed briri closed 7 years ago

briri commented 7 years ago

Allow users to add their ORCID to their user profile. This should use OAuth to verify that the user has the correct one. An example is available in UC3's Dash product.

References: https://www.pivotaltracker.com/story/show/119416159

briri commented 7 years ago

Using the ORCID oauth method being used by the https://github.com/CDLUC3/stash_datacite repository.

Will need to touch base with the Dash team to make sure that the Roadmap app registration is correct.

briri commented 7 years ago

Added a new identifier_schema table that can be used to store identification service info: URIs, auth keys, etc. Then added a join table called user_identifiers that will replace the existing orcid_id field in the users table.

The user profile page dynamically builds the identifier section based on the identifier scheme listed in the new table. This should make it easier to add additional authentication methods in the future if desired (e.g. Google, Twitter, etc.)

briri commented 7 years ago

An example of the data that should be used to initialize the ORCID identity provider can be found in the db/seeds.rb file. I

briri commented 7 years ago

this is ready for testing on uc3-roadmap-dev @stephaniesimms

briri commented 7 years ago

After looking at this new functionality I think we should add an ability to disassociate the user's account from ORCID. Perhaps just a 'remove' hyperlink or a red 'X' button. It would then just delete the record from the join table behind the scenes.

marisastrong commented 7 years ago

Should we add a “Your ORCID will no longer be associated with your DMPTool profile. Are you sure” button? Will this cause issues later when we allow folks to authenticate via ORCID?

From: Brian Riley notifications@github.com Reply-To: DMPRoadmap/roadmap reply@reply.github.com Date: Wednesday, November 2, 2016 at 11:03 AM To: DMPRoadmap/roadmap roadmap@noreply.github.com Cc: Marisa Strong Marisa.Strong@ucop.edu, Comment comment@noreply.github.com Subject: Re: [DMPRoadmap/roadmap] Add ORCID to user profile (#42)

After looking at this new functionality I think we should add an ability to disassociate the user's account from ORCID. Perhaps just a 'remove' hyperlink or a red 'X' button. It would then just delete the record from the join table behind the scenes.

— You are receiving this because you commented. Reply to this email directly, view it on GitHubhttps://github.com/DMPRoadmap/roadmap/issues/42#issuecomment-257949089, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AAxeL75BmUai8ImXZAEEACiItqCTAJSuks5q6NB9gaJpZM4KZIHS.

stephaniesimms commented 7 years ago

We should definitely add the ability to unlink/remove the ORCID (see screenshot below for DMPTool My Profile page). I just added mine to a test account. Then I tried to unlink it via my ORCID account directly by removing the DMPTool as a "Trusted Organization" - but all that did was block info from being passed between the systems. It didn't remove my ORCID from the test profile as I expected it to/might.

I think a 'remove' hyperlink or 'X' button is sufficient for now. But if we decide to support authentication via ORCID then we should follow Marisa's suggestion. My feeling is that we can wait to define the process until after we finalize the Shib workflow. The link/unlink option should be consistent for Shib and ORCID. edit-delete

marisastrong commented 7 years ago

yes i was thinking this was for ORCID authentication. I agree, having an X is adequate for now.