summaryrefslogtreecommitdiff
path: root/keystonemiddleware/s3_token.py
diff options
context:
space:
mode:
Diffstat (limited to 'keystonemiddleware/s3_token.py')
-rw-r--r--keystonemiddleware/s3_token.py12
1 files changed, 11 insertions, 1 deletions
diff --git a/keystonemiddleware/s3_token.py b/keystonemiddleware/s3_token.py
index d8d8e78..ad27aff 100644
--- a/keystonemiddleware/s3_token.py
+++ b/keystonemiddleware/s3_token.py
@@ -33,12 +33,21 @@ This WSGI component:
import webob
+from oslo_config import cfg
from oslo_log import log as logging
from oslo_serialization import jsonutils
from oslo_utils import strutils
import requests
import six
+s3_opts = [
+ cfg.IntOpt('timeout', default=60,
+ help='Timeout to obtain token.'),
+]
+
+CONF = cfg.CONF
+CONF.register_opts(s3_opts, group='s3_token')
+
PROTOCOL_NAME = 'S3 Token Authentication'
@@ -113,7 +122,8 @@ class S3Token(object):
try:
response = requests.post('%s/v2.0/s3tokens' % self._request_uri,
headers=headers, data=creds_json,
- verify=self._verify)
+ verify=self._verify,
+ timeout=CONF.s3_token.timeout)
except requests.exceptions.RequestException as e:
self._logger.info('HTTP connection exception: %s', e)
resp = self._deny_request('InvalidURI')