Not a bad idea, actually, but the other site is on shared hosting, so
I don't expect the host to be willing to add a self-signed cert as
trusted.



On May 24, 10:07 am, Alex Robbins <alexander.j.robb...@gmail.com>
wrote:
> Just a thought, but if you are the only person using the url, you
> could make your own self-signed security cert. It would be free and
> protect your data. It won't show up as trusted to users, but your
> other server can be set to accept it. (Assuming the lack of ssl is a
> budget issue, that wouldn't fix a technical issue.)
>
> Alex
>
> On May 23, 10:10 am, ringemup <ringe...@gmail.com> wrote:
>
>
>
> > Hi folks --
>
> > I'm putting together a simple API to allow a separately-hosted but
> > trusted site to perform a very limited set of actions on my site.  I'm
> > wondering whether the design I've come up with is reasonably secure:
>
> > - Other site gets an API key, which is actually in two parts, public
> > key and private key, each of which is a uuid generated by Python's
> > uuid module.
>
> > - The API key object in the DB references a User object, whose
> > permissions determine what actions the API key owner may take
>
> > - Other site submits a POST request to a special URL on my site.  POST
> > request contains 3 vars: public_key, data (as JSON), hash.
>
> > - Hash is a SHA1 of the data concatenated with the private key
>
> > - I use the public key to search the database for the API key and
> > permissions.
>
> > - I generate the SHA1 of the data concatenated with the private key
> > from the DB, and check it against the submitted hash; only if they
> > match do I decode the data dict and take the actions specified within
>
> > - I then return an HTTP response containing a JSON object of the
> > format:
>
> > {
> >     return_data: [object containing success / failure codes, messages,
> > any other data],
> >     hash: [SHA1 of return_data concatenated with private key]
>
> > }
>
> > - All data will be transmitted in the clear (no SSL currently
> > available -- *sigh*), but there will be no sensitive data in the
> > incoming data dict.  return_data may contain values that aren't meant
> > to be broadcasted, but aren't really sensitive (along the lines of
> > activation keys for a game)
>
> > Do you see any major potential flaws in this plan?
>
> > Thanks!
>
> > --
> > You received this message because you are subscribed to the Google Groups 
> > "Django users" group.
> > To post to this group, send email to django-us...@googlegroups.com.
> > To unsubscribe from this group, send email to 
> > django-users+unsubscr...@googlegroups.com.
> > For more options, visit this group 
> > athttp://groups.google.com/group/django-users?hl=en.
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Django users" group.
> To post to this group, send email to django-us...@googlegroups.com.
> To unsubscribe from this group, send email to 
> django-users+unsubscr...@googlegroups.com.
> For more options, visit this group 
> athttp://groups.google.com/group/django-users?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to