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

SWORD: disable auth via username and password in favor of API key/token #1823

Closed
pdurbin opened this issue Apr 1, 2015 · 6 comments
Closed
Assignees
Labels

Comments

@pdurbin
Copy link
Member

pdurbin commented Apr 1, 2015

Even though we've always required HTTPS for SWORD we have long recognized that it's suboptimal to have people pass their actual username and password to authenticate.

Now that we have API keys/tokens (#1293) we'd like to make their use required.

Obviously this is a big change and assuming it lands in 4.0 will be highlighted at the top of http://guides.dataverse.org/en/latest/api/sword.html#backward-incompatible-changes

@pdurbin pdurbin self-assigned this Apr 1, 2015
@pdurbin pdurbin added this to the Beta 15 - Dataverse 4.0 milestone Apr 1, 2015
pdurbin added a commit to IQSS/dataverse-apitester that referenced this issue Apr 2, 2015
@pdurbin
Copy link
Member Author

pdurbin commented Apr 2, 2015

As of c0f1980 we are no longer allowing authentication to SWORD via usernames and passwords. An API key/token is required.

I ran this by @rliebz and @axfelix yesterday and they seemed ok with the change: http://irclog.iq.harvard.edu/dataverse/2015-03-31#i_17668 . Heads up to @leeper about this.

I also updated the docs and emphasized that this is a backwards-incompatible change (for good reason, better security): http://guides.dataverse.org/en/latest/api/sword.html

I had to adjust the apitester code at IQSS/dataverse-apitester@1c7c2c1 to get the tests to continue to pass: https://build.hmdc.harvard.edu:8443/job/apitest.dataverse.org-apitester/28/

Passing to QA.

@pdurbin pdurbin removed their assignment Apr 2, 2015
@leeper
Copy link
Member

leeper commented Apr 2, 2015

Thanks for the cc. Seems like a good idea to me, despite loss of backwards-compatibility.

@pdurbin
Copy link
Member Author

pdurbin commented Apr 15, 2015

You can now retrieve your API token via the API per #1818

We don't yet have a way to generate an API token through API using username/password but that ticket is #1935 . For now you must use the GUI: http://guides.dataverse.org/en/latest/user/account.html#generate-your-api-token

@leeper
Copy link
Member

leeper commented Apr 30, 2015

Are there now any places (in any of the APIs) where username and password are needed or is everything now done by API key?

@pdurbin
Copy link
Member Author

pdurbin commented Apr 30, 2015

@leeper I would not say that username and passwords are needed by the API since we're requiring API tokens now, but you can look up your API token like this:

https://apitest.dataverse.org/api/v1/builtin-users/spruce/api-token?password=spruce

This was developed in #1818.

In #1935 we've been asked to allow users to generate an API token with a username and password.

See also this related issue: IQSS/dataverse-client-python#16

@leeper
Copy link
Member

leeper commented May 2, 2015

Okay, thanks!

On Thu, Apr 30, 2015 at 3:46 PM, Philip Durbin [email protected]
wrote:

@leeper https://github.com/leeper I would not say that username and
passwords are needed by the API since we're requiring API tokens now,
but you can look up your API token like this:

https://apitest.dataverse.org/api/v1/builtin-users/spruce/api-token?password=spruce

This was developed in #1818
#1818.

In #1935 #1935 we've been asked
to allow users to generate an API token with a username and password.

See also this related issue: IQSS/dataverse-client-python#16
IQSS/dataverse-client-python#16


Reply to this email directly or view it on GitHub
#1823 (comment).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants