mirror of
https://github.com/ushahidi/SMSSync.git
synced 2026-04-25 15:55:57 +03:00
[GH-ISSUE #30] No authentication in task checking #25
Labels
No labels
Bug report
Code improvement
Concern
Feature request
Feature request
Good first issue to work on
In progress
Needs info
Question
Ready
Translation
User Experience
User Experience
Website
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/SMSSync#25
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @ghost on GitHub (Aug 22, 2012).
Original GitHub issue: https://github.com/ushahidi/SMSSync/issues/30
I know sending a plaintext password in a POST is bad, but it is an incredible improvement over no authentication at all. Until a more secure authentication mechanism is available, task checking should at least have an option to use POST instead of GET, and include both the secret and the device ID in it.
@olliebennett commented on GitHub (Dec 23, 2012):
I agree that this would be an improvement.
In order to maintain backwards compatibility with the current process (i.e. server configurations which currently check for the GET parameter
?task=send) how about sending both POST and GET together? That is, send a POST request toyour_callback_url?task=send.As a sidenote, I'm actually satisfied by the level of security offered by the combination of HTTPS POST and the secret/device ID, which sacrifices neither clarity of code nor ease of server development. What would your suggestion be for the "more secure authentication mechanism"?
@ghost commented on GitHub (Feb 28, 2013):
Combining GET and POST like that is kind of ugly, but so is breaking API. There's probably some combination of server and language that breaks even with that, but probably rather rare.
I would propose that since there's already a user defined secret key(i.e. a password) per sync target, all requests to that target(sending, task checking, potential callbacks) would include in POST these items:
Hash function should be something widely available, like sha512.
@mandric commented on GitHub (Mar 4, 2013):
I vote for separate settings option to include username/password for HTTP basic auth, that is just used on any request when activated. Basic Auth over https is not so horrible.
@eyedol commented on GitHub (Apr 8, 2014):
Basic Auth is now supported.