1 |
1 |
import uuid
|
2 |
|
import requests
|
3 |
2 |
import logging
|
4 |
3 |
import json
|
5 |
4 |
import urlparse
|
6 |
5 |
import urllib
|
|
6 |
import requests
|
7 |
7 |
|
8 |
8 |
from requests_oauthlib import OAuth2Session
|
9 |
9 |
|
... | ... | |
86 |
86 |
}
|
87 |
87 |
logger.debug('access token request %s', data)
|
88 |
88 |
try:
|
89 |
|
response = requests.post(
|
|
89 |
session = utils.requests_retry_session()
|
|
90 |
response = session.post(
|
90 |
91 |
app_settings.token_url, data=data,
|
91 |
92 |
verify=app_settings.verify_certificate,
|
92 |
|
allow_redirects=False, timeout=10)
|
|
93 |
allow_redirects=False, timeout=3)
|
93 |
94 |
if response.status_code != 200:
|
94 |
95 |
try:
|
95 |
96 |
data = response.json()
|
... | ... | |
99 |
100 |
logger.warning(u'oauth2 error on access token retrieval: %r', response.content)
|
100 |
101 |
return
|
101 |
102 |
except requests.exceptions.RequestException as e:
|
102 |
|
logger.error(u'unable to retrieve access token {}'.format(e))
|
|
103 |
logger.warning(u'unable to retrieve access token {}'.format(e))
|
103 |
104 |
else:
|
104 |
105 |
try:
|
105 |
106 |
response = response.json()
|
... | ... | |
193 |
194 |
data = self.oauth_session().get(url, verify=verify, allow_redirects=False, timeout=3)
|
194 |
195 |
data.raise_for_status()
|
195 |
196 |
except requests.exceptions.RequestException as e:
|
196 |
|
self.logger.error(u'unable to retrieve ressource from {} due to {}'.format(url, e))
|
|
197 |
self.logger.warning(u'unable to retrieve ressource from {} due to {}'.format(url, e))
|
197 |
198 |
else:
|
198 |
199 |
try:
|
199 |
200 |
data = data.json()
|
... | ... | |
270 |
271 |
self.logger.debug('fc id_token %s', self.id_token)
|
271 |
272 |
for key in self.id_token:
|
272 |
273 |
setattr(self, key, self.id_token[key])
|
273 |
|
self.oauth_session = lambda: OAuth2Session(
|
274 |
|
app_settings.client_id, token=self.token)
|
|
274 |
self.oauth_session = lambda: utils.requests_retry_session(
|
|
275 |
session=OAuth2Session(
|
|
276 |
app_settings.client_id, token=self.token))
|
275 |
277 |
self.user_info = self.get_user_info()
|
276 |
278 |
if not self.user_info:
|
277 |
279 |
msg = 'userinfo resolution failed : {}'.format(self.token)
|
278 |
|
-
|