openstack team mailing list archive
-
openstack team
-
Mailing list archive
-
Message #01235
Re: State of OpenStack Auth
I think you're overestimating the security risk in issue 3. You're bank's website uses HTTPS. In order to launch a successful man-in-the middle attack against it you would have to compromise the certificate authority. Basic Auth with HTTPS against a single endpoint is pretty darn secure and no more secure than option 1. The big advantage of 2 is that you can initiate conversations *without* HTTPS, there may be cases when you'd want to do that, but seeing that we have the potential to move passwords around when we create servers, I don't see why you would want to go that route. Using a token becomes important when we start talking about delegation, but let's not go there right now :-)
-jOrGe W.
On Mar 3, 2011, at 2:33 PM, Michael Mayo wrote:
Here are my thoughts, as a client developer:
1. Hit auth server first for token, then hit compute and storage endpoints
This is fairly simple, but there are a couple of problems with it:
a. It's not very curl or browser friendly (you have to curl the auth server first and copy the token, which is annoying)
b. It's a waste of an HTTP request. That may not matter for most people, but in the case of something like a mobile client, it's a serious problem. Network traffic is a very precious resource on cell phones, so if you can do anything to reduce the number of HTTP requests you need to do something, you should. This is not only true for the OpenStack mobile apps I write, but also for developers making apps that need to use swift to upload content somewhere.
2. Signed requests
This is a little more painful from a development standpoint, but it's not really that big of a deal. The only downside to this approach is that it's not curl or browser friendly. However, the upside of preventing replay attacks is pretty valuable.
3. HTTP Basic
HTTP Basic is great because it's super easy to use and it's curl and browser friendly. However, replay attacks are possible so you open yourself up to a security issue there.
My Vote (Assuming I Actually Have One)
I think signed requests are the best option since it's more secure than HTTP Basic. We could make an oscurl command line tool that would sign a request and behave exactly like curl. That shouldn't be too hard. But if that can't happen, HTTP Basic is the next best choice. Requiring API users to get a new auth token every n hours via an auth endpoint kind of sucks, especially from a mobile client perspective.
On Mar 3, 2011, at 9:04 AM, Jorge Williams wrote:
I agree with Greg here. Signatures complicate life for our clients, they are not browser friendly, and I'm not really convinced that we need them. If we are going to have a default (and I think that we should) it should be dead simple to integrate with. I would vote for basic auth with https.
-jOrGe W.
On Mar 3, 2011, at 9:40 AM, Greg wrote:
On Mar 2, 2011, at 8:30 PM, Jesse Andrews wrote:
I would prefer a signature based approach as the default (as signatures limits replay attacks; tokens allow an eavesdropper to make arbitrary requests if they obtain a token).
On the other hand, signatures make simple things difficult, such as quick curl requests, dev testing, etc. The usual tradeoff of security and convenience.
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : openstack@xxxxxxxxxxxxxxxxxxx<mailto:openstack@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp
_______________________________________________
Mailing list: https://launchpad.net/~openstack
Post to : openstack@xxxxxxxxxxxxxxxxxxx<mailto:openstack@xxxxxxxxxxxxxxxxxxx>
Unsubscribe : https://launchpad.net/~openstack
More help : https://help.launchpad.net/ListHelp
Mike Mayo
901-299-9306
@greenisus
Follow ups
References
-
State of OpenStack Auth
From: Eric Day, 2011-03-01
-
Re: State of OpenStack Auth
From: Soren Hansen, 2011-03-01
-
Re: State of OpenStack Auth
From: Eric Day, 2011-03-01
-
Re: State of OpenStack Auth
From: Soren Hansen, 2011-03-01
-
Re: State of OpenStack Auth
From: Eric Day, 2011-03-01
-
Re: State of OpenStack Auth
From: Jorge Williams, 2011-03-02
-
Re: State of OpenStack Auth
From: Jesse Andrews, 2011-03-03
-
Re: State of OpenStack Auth
From: Greg, 2011-03-03
-
Re: State of OpenStack Auth
From: Jorge Williams, 2011-03-03
-
Re: State of OpenStack Auth
From: Michael Mayo, 2011-03-03