Skip to content

Commit 2232914

Browse files
authored
Merge pull request #142 from sQu4rks/issue-138
Added option to disable ssl cert verification
2 parents 4847f30 + 7b4b415 commit 2232914

File tree

2 files changed

+19
-3
lines changed

2 files changed

+19
-3
lines changed

webexteamssdk/api/__init__.py

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,8 @@ def __init__(self, access_token=None, base_url=DEFAULT_BASE_URL,
7272
redirect_uri=None,
7373
proxies=None,
7474
be_geo_id=None,
75-
caller=None):
75+
caller=None,
76+
disable_ssl_verify=False):
7677
"""Create a new WebexTeamsAPI object.
7778
7879
An access token must be used when interacting with the Webex Teams API.
@@ -122,6 +123,9 @@ def __init__(self, access_token=None, base_url=DEFAULT_BASE_URL,
122123
caller(basestring): Optional identifier for API usage tracking.
123124
Defaults to checking for a WEBEX_PYTHON_SDK_CALLER environment
124125
variable.
126+
disable_ssl_verify(bool): Optional boolean flag to disable ssl
127+
verification. Defaults to False. If set to True, the requests
128+
session won't verify ssl certs anymore.
125129
126130
Returns:
127131
WebexTeamsAPI: A new WebexTeamsAPI object.
@@ -143,6 +147,7 @@ def __init__(self, access_token=None, base_url=DEFAULT_BASE_URL,
143147
check_type(proxies, dict, optional=True)
144148
check_type(be_geo_id, basestring, optional=True)
145149
check_type(caller, basestring, optional=True)
150+
check_type(disable_ssl_verify, bool, optional=True)
146151

147152
access_token = access_token or WEBEX_TEAMS_ACCESS_TOKEN
148153

@@ -186,7 +191,8 @@ def __init__(self, access_token=None, base_url=DEFAULT_BASE_URL,
186191
wait_on_rate_limit=wait_on_rate_limit,
187192
proxies=proxies,
188193
be_geo_id=be_geo_id,
189-
caller=caller
194+
caller=caller,
195+
disable_ssl_verify=disable_ssl_verify
190196
)
191197

192198
# API wrappers

webexteamssdk/restsession.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,8 @@ def __init__(self, access_token, base_url,
180180
wait_on_rate_limit=DEFAULT_WAIT_ON_RATE_LIMIT,
181181
proxies=None,
182182
be_geo_id=None,
183-
caller=None):
183+
caller=None,
184+
disable_ssl_verify=False):
184185
"""Initialize a new RestSession object.
185186
186187
Args:
@@ -200,6 +201,9 @@ def __init__(self, access_token, base_url,
200201
caller(basestring): Optional identifier for API usage tracking.
201202
Defaults to checking for a WEBEX_PYTHON_SDK_CALLER environment
202203
variable.
204+
disable_ssl_verify(bool): Optional boolean flag to disable ssl
205+
verification. Defaults to False. If set to true, the requests
206+
session won't verify ssl certs anymore.
203207
204208
Raises:
205209
TypeError: If the parameter types are incorrect.
@@ -210,6 +214,7 @@ def __init__(self, access_token, base_url,
210214
check_type(single_request_timeout, int, optional=True)
211215
check_type(wait_on_rate_limit, bool)
212216
check_type(proxies, dict, optional=True)
217+
check_type(disable_ssl_verify, bool, optional=True)
213218

214219
super(RestSession, self).__init__()
215220

@@ -222,6 +227,11 @@ def __init__(self, access_token, base_url,
222227
# Initialize a new session
223228
self._req_session = requests.session()
224229

230+
# Disable ssl cert verification if chosen by user
231+
if disable_ssl_verify:
232+
self._req_session.verify = False
233+
234+
225235
if proxies is not None:
226236
self._req_session.proxies.update(proxies)
227237

0 commit comments

Comments
 (0)