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

Add OAuth Interface #3

Open
NickTikhonov opened this issue Mar 25, 2017 · 5 comments
Open

Add OAuth Interface #3

NickTikhonov opened this issue Mar 25, 2017 · 5 comments

Comments

@NickTikhonov
Copy link

Hey guys - thanks for the project, it works really well and I love having my stats in the menubar 👍 It would be awesome if you could implement OAuth login for the app, instead of having to manually generate the key and build the application from the command line!

@NickTikhonov NickTikhonov changed the title Add OAuth interface Add OAuth Interface Mar 25, 2017
@willwashburn
Copy link
Owner

Thanks @NickTikhonov! That would definitely would make things easier for people and be less janky. Would love your help too if you're interested.

I guess the first step here would be getting an app approved with Rescuetime? I can get started with that.

Thinking through it further I'm not even sure how we would store those keys without some sort of backend infrastructure / oAuth service. We could just throw something up on heroku though once we had it running... hmm 🤔

@khaliqgant What are you thinking?

I'd be happy to throw some time at this at some point if we had a good plan.

@willwashburn willwashburn self-assigned this Mar 27, 2017
@NickTikhonov
Copy link
Author

I wonder if it would be possible to just store the key locally once generated by the OAuth interface. This shouldn't make the app any less secure than already is (you can easily extract the key from the built Mac application by looking inside /Contents/Resources/app), but this keeps the architecture serverless and adds the required functionality. The only question is whether RescueTime will approve such an application, we should start with that 😄

@khaliqgant
Copy link
Collaborator

Thanks Nick! I was actually thinking storing it locally would be the move here as well, keeping it relatively light weight. @willwashburn you're taking the lead on contacting RescueTime?

@willwashburn
Copy link
Owner

Word. Just sent them a note, hopefully we'll hear back soon.
image

I referenced this PR, so maybe they'll say hi?

Re: storing the token locally -- I think it makes sense to store the token once we get it but what about the client ID and secret? I don't think it would make sense to store that with the app.. wouldn't be very secret haha.

@willwashburn
Copy link
Owner

@NickTikhonov @khaliqgant Heard back from rescuetime:

Hi there,
Sure, we can set up an Oauth2 connection for you. I'll just need a couple things to get started.

The name of your application

An https redirect_uri for the production and development environments for your web application. (Please note the redirect uri MUST be https)

Once I have those two things, I'll generate connection information and you'll be able to use that to let people start connecting their RescueTime accounts.

If possible, I'd also love an overview of what you hope the integration will accomplish for people who connect their RescueTime accounts to it.

Thank you,

RescueTime support

I do think we'll need to have a server side implementation if we want to keep the secret a secret.

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

No branches or pull requests

3 participants