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

Unable to update OAuth scope for authenticated ORCIDs #10819

Open
ewhanson opened this issue Jan 17, 2025 · 1 comment
Open

Unable to update OAuth scope for authenticated ORCIDs #10819

ewhanson opened this issue Jan 17, 2025 · 1 comment
Assignees
Labels
Enhancement:1:Minor A new feature or improvement that can be implemented in less than 3 days.
Milestone

Comments

@ewhanson
Copy link
Collaborator

ewhanson commented Jan 17, 2025

Describe the issue

As background, there are two different API types for ORCID, the public and member APIs. They each make use of different OAuth scopes when authenticating users. If OJS users authenticate their ORCID via OAuth with the ORCID service, they are giving permission to a specific scope depending on which API version the journal is using. If a journal switches to use the member API in order to deposit items (submissions/reviews) with ORCID, previously authenticated ORCIDs stored in OJS will not have the correct permissions to make the deposit because they were previously authorized with a more limited scope.

Describe the solution

OJS needs to be able to handle the switchover from the public API to the member API gracefully.

The following will accomplish this:

  1. When a deposit is attempted with the member API, first check if the given user/author has the correctly scoped access token.
  2. If not, send a new email template to the user/author explaining the situation and prompting them to re-authenticate their ORCID in order to push the item to ORCID.
  3. Add functionality to the authorization email to handle depositing a specified record as part of the process.

TODOs, PRs, Notes

PRs

Notes

Important

This issue changes the default cache driver from opcache to file. If you have previously manually set the cache default to opcache, you will need to set it to file for certain features to work properly. This issue introduces the use of unique jobs, which require use of the file cache driver.

@ewhanson ewhanson added the Enhancement:1:Minor A new feature or improvement that can be implemented in less than 3 days. label Jan 17, 2025
@ewhanson ewhanson added this to the 3.5.0 LTS milestone Jan 17, 2025
@ewhanson ewhanson self-assigned this Jan 17, 2025
@ewhanson ewhanson changed the title Unable to update OAuth scope for authenticated ORCIDs. Unable to update OAuth scope for authenticated ORCIDs Jan 20, 2025
ewhanson added a commit to ewhanson/pkp-lib that referenced this issue Jan 31, 2025
ewhanson added a commit to ewhanson/pkp-lib that referenced this issue Jan 31, 2025
@ewhanson
Copy link
Collaborator Author

Hey @bozana, could you have a look at these PRs (noted in the issue description above)? Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement:1:Minor A new feature or improvement that can be implemented in less than 3 days.
Projects
None yet
Development

No branches or pull requests

1 participant