rgw: can set temp url key on user

Either through new through new rest api call, or via
radosgw-admin

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: add optional tenant name for swift urls

In order to maintain compatibility with swift clients that expect the
url to also contain a reference to the tenant name, add an optional
param (empty by default) that would add it.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: handle temp url key authorization

Fixes: #3454
Implement auth handling code that checks temp url signature and
expiration. The key that is used for the signature is the bucket owner's
temp url key.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: support multiple temp url keys

Apparently the swift api defines two temp url keys. Add internal support
for multiple keys, radosgw-admin can config two keys.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>
rgw: fix temp url restful apis and support multiple keys

the set temp url api didn't do anything, fix that. Also add support for
multiple temp url keys.

Signed-off-by: Yehuda Sadeh <yehuda@inktank.com>