blob: 9834375c5e07ec3f542272664a87f8e913ccfef2 [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3 "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6 <title>oauth2client.client.SignedJwtAssertionCredentials</title>
7 <link rel="stylesheet" href="epydoc.css" type="text/css" />
8 <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12 alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15 bgcolor="#a0c0ff" cellspacing="0">
16 <tr valign="middle">
17
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="oauth2client-module.html">Package&nbsp;oauth2client</a> ::
38 <a href="oauth2client.client-module.html">Module&nbsp;client</a> ::
39 Class&nbsp;SignedJwtAssertionCredentials
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="oauth2client.client.SignedJwtAssertionCredentials-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class SignedJwtAssertionCredentials</h1><p class="nomargin-top"><span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials">source&nbsp;code</a></span></p>
57<center>
Joe Gregorio746096f2012-06-15 10:53:36 -040058<center> <map id="class_hierarchy_for_signedjwta" name="class_hierarchy_for_signedjwta">
Joe Gregorio52a5c532013-01-24 16:19:07 -050059<area shape="rect" id="node1" href="oauth2client.client.AssertionCredentials-class.html" title="AssertionCredentials" alt="" coords="5,6,147,34"/>
60<area shape="rect" id="node2" href="oauth2client.client.Credentials-class.html" title="Credentials" alt="" coords="171,6,259,34"/>
61<area shape="rect" id="node3" href="oauth2client.client.OAuth2Credentials-class.html" title="OAuth2Credentials" alt="" coords="283,6,413,34"/>
62<area shape="rect" id="node4" href="oauth2client.client.SignedJwtAssertionCredentials-class.html" title="SignedJwtAssertionCredentials" alt="" coords="437,6,640,34"/>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040063</map>
Joe Gregorio746096f2012-06-15 10:53:36 -040064 <img src="class_hierarchy_for_signedjwta.gif" alt='' usemap="#class_hierarchy_for_signedjwta" ismap="ismap" class="graph-without-title" />
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040065</center>
66</center>
67<hr />
68<pre class="literalblock">
69Credentials object used for OAuth 2.0 Signed JWT assertion grants.
70
Joe Gregorio672051e2012-07-10 09:11:45 -040071This credential does not require a flow to instantiate because it represents
72a two legged flow, and therefore has all of the required information to
73generate and refresh its own access tokens.
74
Joe Gregorio52a5c532013-01-24 16:19:07 -050075SignedJwtAssertionCredentials requires either PyOpenSSL, or PyCrypto 2.6 or
76later. For App Engine you may also consider using AppAssertionCredentials.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -040077
78</pre>
79
80<!-- ==================== INSTANCE METHODS ==================== -->
81<a name="section-InstanceMethods"></a>
82<table class="summary" border="1" cellpadding="3"
83 cellspacing="0" width="100%" bgcolor="white">
84<tr bgcolor="#70b0f0" class="table-header">
85 <td colspan="2" class="table-header">
86 <table border="0" cellpadding="0" cellspacing="0" width="100%">
87 <tr valign="top">
88 <td align="left"><span class="table-header">Instance Methods</span></td>
89 <td align="right" valign="top"
90 ><span class="options">[<a href="#section-InstanceMethods"
91 class="privatelink" onclick="toggle_private();"
92 >hide private</a>]</span></td>
93 </tr>
94 </table>
95 </td>
96</tr>
97<tr>
98 <td width="15%" align="right" valign="top" class="summary">
99 <span class="summary-type">&nbsp;</span>
100 </td><td class="summary">
101 <table width="100%" cellpadding="0" cellspacing="0" border="0">
102 <tr>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400103 <td><span class="summary-sig"><a href="oauth2client.client.SignedJwtAssertionCredentials-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
104 <span class="summary-sig-arg">service_account_name</span>,
105 <span class="summary-sig-arg">private_key</span>,
106 <span class="summary-sig-arg">scope</span>,
107 <span class="summary-sig-arg">private_key_password</span>=<span class="summary-sig-default">'notasecret'</span>,
108 <span class="summary-sig-arg">user_agent</span>=<span class="summary-sig-default">None</span>,
109 <span class="summary-sig-arg">token_uri</span>=<span class="summary-sig-default">'https://accounts.google.com/o/oauth2/token'</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400110 <span class="summary-sig-arg">**kwargs</span>)</span><br />
111 Constructor for SignedJwtAssertionCredentials.</td>
112 <td align="right" valign="top">
Joe Gregoriof4839b02012-09-06 13:47:24 -0400113 <span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials.__init__">source&nbsp;code</a></span>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400114
115 </td>
116 </tr>
117 </table>
118
119 </td>
120 </tr>
121<tr class="private">
122 <td width="15%" align="right" valign="top" class="summary">
123 <span class="summary-type">&nbsp;</span>
124 </td><td class="summary">
125 <table width="100%" cellpadding="0" cellspacing="0" border="0">
126 <tr>
127 <td><span class="summary-sig"><a href="oauth2client.client.SignedJwtAssertionCredentials-class.html#_generate_assertion" class="summary-sig-name" onclick="show_private();">_generate_assertion</a>(<span class="summary-sig-arg">self</span>)</span><br />
128 Generate the assertion that will be used in the request.</td>
129 <td align="right" valign="top">
130 <span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials._generate_assertion">source&nbsp;code</a></span>
131
132 </td>
133 </tr>
134 </table>
135
136 </td>
137 </tr>
138 <tr>
139 <td colspan="2" class="summary">
140 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.AssertionCredentials-class.html">AssertionCredentials</a></code></b> (private):
141 <code><a href="oauth2client.client.AssertionCredentials-class.html#_generate_refresh_request_body" onclick="show_private();">_generate_refresh_request_body</a></code>
142 </p></div>
143 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.OAuth2Credentials-class.html">OAuth2Credentials</a></code></b>:
144 <code><a href="oauth2client.client.OAuth2Credentials-class.html#__getstate__">__getstate__</a></code>,
145 <code><a href="oauth2client.client.OAuth2Credentials-class.html#__setstate__">__setstate__</a></code>,
Joe Gregoriof4839b02012-09-06 13:47:24 -0400146 <code><a href="oauth2client.client.OAuth2Credentials-class.html#access_token_expired">access_token_expired</a></code>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400147 <code><a href="oauth2client.client.OAuth2Credentials-class.html#apply">apply</a></code>,
148 <code><a href="oauth2client.client.OAuth2Credentials-class.html#authorize">authorize</a></code>,
149 <code><a href="oauth2client.client.OAuth2Credentials-class.html#refresh">refresh</a></code>,
150 <code><a href="oauth2client.client.OAuth2Credentials-class.html#set_store">set_store</a></code>,
151 <code><a href="oauth2client.client.OAuth2Credentials-class.html#to_json">to_json</a></code>
152 </p>
153 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.OAuth2Credentials-class.html">OAuth2Credentials</a></code></b> (private):
154 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_do_refresh_request" onclick="show_private();">_do_refresh_request</a></code>,
155 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_generate_refresh_request_headers" onclick="show_private();">_generate_refresh_request_headers</a></code>,
156 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_refresh" onclick="show_private();">_refresh</a></code>,
157 <code><a href="oauth2client.client.OAuth2Credentials-class.html#_updateFromCredential" onclick="show_private();">_updateFromCredential</a></code>
158 </p></div>
159 <div class="private"> <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">Credentials</a></code></b> (private):
160 <code><a href="oauth2client.client.Credentials-class.html#_to_json" onclick="show_private();">_to_json</a></code>
161 </p></div>
162 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
163 <code>__delattr__</code>,
164 <code>__format__</code>,
165 <code>__getattribute__</code>,
166 <code>__hash__</code>,
167 <code>__new__</code>,
168 <code>__reduce__</code>,
169 <code>__reduce_ex__</code>,
170 <code>__repr__</code>,
171 <code>__setattr__</code>,
172 <code>__sizeof__</code>,
173 <code>__str__</code>,
174 <code>__subclasshook__</code>
175 </p>
176 </td>
177 </tr>
178</table>
179<!-- ==================== CLASS METHODS ==================== -->
180<a name="section-ClassMethods"></a>
181<table class="summary" border="1" cellpadding="3"
182 cellspacing="0" width="100%" bgcolor="white">
183<tr bgcolor="#70b0f0" class="table-header">
184 <td colspan="2" class="table-header">
185 <table border="0" cellpadding="0" cellspacing="0" width="100%">
186 <tr valign="top">
187 <td align="left"><span class="table-header">Class Methods</span></td>
188 <td align="right" valign="top"
189 ><span class="options">[<a href="#section-ClassMethods"
190 class="privatelink" onclick="toggle_private();"
191 >hide private</a>]</span></td>
192 </tr>
193 </table>
194 </td>
195</tr>
196<tr>
197 <td width="15%" align="right" valign="top" class="summary">
198 <span class="summary-type">&nbsp;</span>
199 </td><td class="summary">
200 <table width="100%" cellpadding="0" cellspacing="0" border="0">
201 <tr>
202 <td><span class="summary-sig"><a href="oauth2client.client.SignedJwtAssertionCredentials-class.html#from_json" class="summary-sig-name">from_json</a>(<span class="summary-sig-arg">cls</span>,
203 <span class="summary-sig-arg">s</span>)</span><br />
204 Instantiate a Credentials object from a JSON description of it.</td>
205 <td align="right" valign="top">
206 <span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials.from_json">source&nbsp;code</a></span>
207
208 </td>
209 </tr>
210 </table>
211
212 </td>
213 </tr>
214 <tr>
215 <td colspan="2" class="summary">
216 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">Credentials</a></code></b>:
217 <code><a href="oauth2client.client.Credentials-class.html#new_from_json">new_from_json</a></code>
218 </p>
219 </td>
220 </tr>
221</table>
222<!-- ==================== CLASS VARIABLES ==================== -->
223<a name="section-ClassVariables"></a>
224<table class="summary" border="1" cellpadding="3"
225 cellspacing="0" width="100%" bgcolor="white">
226<tr bgcolor="#70b0f0" class="table-header">
227 <td colspan="2" class="table-header">
228 <table border="0" cellpadding="0" cellspacing="0" width="100%">
229 <tr valign="top">
230 <td align="left"><span class="table-header">Class Variables</span></td>
231 <td align="right" valign="top"
232 ><span class="options">[<a href="#section-ClassVariables"
233 class="privatelink" onclick="toggle_private();"
234 >hide private</a>]</span></td>
235 </tr>
236 </table>
237 </td>
238</tr>
239<tr>
240 <td width="15%" align="right" valign="top" class="summary">
241 <span class="summary-type">&nbsp;</span>
242 </td><td class="summary">
243 <a name="MAX_TOKEN_LIFETIME_SECS"></a><span class="summary-name">MAX_TOKEN_LIFETIME_SECS</span> = <code title="3600">3600</code>
244 </td>
245 </tr>
246 <tr>
247 <td colspan="2" class="summary">
248 <p class="indent-wrapped-lines"><b>Inherited from <code><a href="oauth2client.client.Credentials-class.html">Credentials</a></code></b>:
249 <code><a href="oauth2client.client.Credentials-class.html#NON_SERIALIZED_MEMBERS">NON_SERIALIZED_MEMBERS</a></code>
250 </p>
251 </td>
252 </tr>
253</table>
254<!-- ==================== PROPERTIES ==================== -->
255<a name="section-Properties"></a>
256<table class="summary" border="1" cellpadding="3"
257 cellspacing="0" width="100%" bgcolor="white">
258<tr bgcolor="#70b0f0" class="table-header">
259 <td colspan="2" class="table-header">
260 <table border="0" cellpadding="0" cellspacing="0" width="100%">
261 <tr valign="top">
262 <td align="left"><span class="table-header">Properties</span></td>
263 <td align="right" valign="top"
264 ><span class="options">[<a href="#section-Properties"
265 class="privatelink" onclick="toggle_private();"
266 >hide private</a>]</span></td>
267 </tr>
268 </table>
269 </td>
270</tr>
271 <tr>
272 <td colspan="2" class="summary">
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400273 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
274 <code>__class__</code>
275 </p>
276 </td>
277 </tr>
278</table>
279<!-- ==================== METHOD DETAILS ==================== -->
280<a name="section-MethodDetails"></a>
281<table class="details" border="1" cellpadding="3"
282 cellspacing="0" width="100%" bgcolor="white">
283<tr bgcolor="#70b0f0" class="table-header">
284 <td colspan="2" class="table-header">
285 <table border="0" cellpadding="0" cellspacing="0" width="100%">
286 <tr valign="top">
287 <td align="left"><span class="table-header">Method Details</span></td>
288 <td align="right" valign="top"
289 ><span class="options">[<a href="#section-MethodDetails"
290 class="privatelink" onclick="toggle_private();"
291 >hide private</a>]</span></td>
292 </tr>
293 </table>
294 </td>
295</tr>
296</table>
297<a name="__init__"></a>
298<div>
299<table class="details" border="1" cellpadding="3"
300 cellspacing="0" width="100%" bgcolor="white">
301<tr><td>
302 <table width="100%" cellpadding="0" cellspacing="0" border="0">
303 <tr valign="top"><td>
Joe Gregoriof4839b02012-09-06 13:47:24 -0400304 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
305 <span class="sig-arg">service_account_name</span>,
306 <span class="sig-arg">private_key</span>,
307 <span class="sig-arg">scope</span>,
308 <span class="sig-arg">private_key_password</span>=<span class="sig-default">'notasecret'</span>,
309 <span class="sig-arg">user_agent</span>=<span class="sig-default">None</span>,
310 <span class="sig-arg">token_uri</span>=<span class="sig-default">'https://accounts.google.com/o/oauth2/token'</span>,
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400311 <span class="sig-arg">**kwargs</span>)</span>
312 <br /><em class="fname">(Constructor)</em>
313 </h3>
314 </td><td align="right" valign="top"
Joe Gregoriof4839b02012-09-06 13:47:24 -0400315 ><span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials.__init__">source&nbsp;code</a></span>&nbsp;
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400316 </td>
317 </tr></table>
318
319 <pre class="literalblock">
320Constructor for SignedJwtAssertionCredentials.
321
322Args:
323 service_account_name: string, id for account, usually an email address.
Joe Gregorio52a5c532013-01-24 16:19:07 -0500324 private_key: string, private key in PKCS12 or PEM format.
325 scope: string or iterable of strings, scope(s) of the credentials being
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400326 requested.
Joe Gregorio52a5c532013-01-24 16:19:07 -0500327 private_key_password: string, password for private_key, unused if
328 private_key is in PEM format.
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400329 user_agent: string, HTTP User-Agent to provide for this application.
330 token_uri: string, URI for token endpoint. For convenience
331 defaults to Google's endpoints but any OAuth 2.0 provider can be used.
332 kwargs: kwargs, Additional parameters to add to the JWT token, for
333 example prn=joe@xample.org.
334
335</pre>
336 <dl class="fields">
Joe Gregorio1b425aa2012-08-24 12:04:34 -0400337 <dt>Decorators:</dt>
338 <dd><ul class="nomargin-top">
339 <li><code>@util.positional(4)</code></li>
340 </ul></dd>
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400341 <dt>Overrides:
342 object.__init__
343 </dt>
344 </dl>
345</td></tr></table>
346</div>
347<a name="from_json"></a>
348<div>
349<table class="details" border="1" cellpadding="3"
350 cellspacing="0" width="100%" bgcolor="white">
351<tr><td>
352 <table width="100%" cellpadding="0" cellspacing="0" border="0">
353 <tr valign="top"><td>
354 <h3 class="epydoc"><span class="sig"><span class="sig-name">from_json</span>(<span class="sig-arg">cls</span>,
355 <span class="sig-arg">s</span>)</span>
356 <br /><em class="fname">Class Method</em>
357 </h3>
358 </td><td align="right" valign="top"
359 ><span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials.from_json">source&nbsp;code</a></span>&nbsp;
360 </td>
361 </tr></table>
362
363 <pre class="literalblock">
364Instantiate a Credentials object from a JSON description of it. The JSON
365should have been produced by calling .to_json() on the object.
366
367Args:
368 data: dict, A deserialized JSON object.
369
370Returns:
371 An instance of a Credentials subclass.
372
373</pre>
374 <dl class="fields">
375 <dt>Overrides:
376 <a href="oauth2client.client.Credentials-class.html#from_json">Credentials.from_json</a>
377 <dd><em class="note">(inherited documentation)</em></dd>
378 </dt>
379 </dl>
380</td></tr></table>
381</div>
382<a name="_generate_assertion"></a>
383<div class="private">
384<table class="details" border="1" cellpadding="3"
385 cellspacing="0" width="100%" bgcolor="white">
386<tr><td>
387 <table width="100%" cellpadding="0" cellspacing="0" border="0">
388 <tr valign="top"><td>
389 <h3 class="epydoc"><span class="sig"><span class="sig-name">_generate_assertion</span>(<span class="sig-arg">self</span>)</span>
390 </h3>
391 </td><td align="right" valign="top"
392 ><span class="codelink"><a href="oauth2client.client-pysrc.html#SignedJwtAssertionCredentials._generate_assertion">source&nbsp;code</a></span>&nbsp;
393 </td>
394 </tr></table>
395
396 <pre class="literalblock">
397Generate the assertion that will be used in the request.
398
399</pre>
400 <dl class="fields">
401 <dt>Overrides:
402 <a href="oauth2client.client.AssertionCredentials-class.html#_generate_assertion" onclick="show_private();">AssertionCredentials._generate_assertion</a>
403 </dt>
404 </dl>
405</td></tr></table>
406</div>
407<br />
408<!-- ==================== NAVIGATION BAR ==================== -->
409<table class="navbar" border="0" width="100%" cellpadding="0"
410 bgcolor="#a0c0ff" cellspacing="0">
411 <tr valign="middle">
412
413 <!-- Tree link -->
414 <th>&nbsp;&nbsp;&nbsp;<a
415 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
416
417 <!-- Index link -->
418 <th>&nbsp;&nbsp;&nbsp;<a
419 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
420
421 <!-- Help link -->
422 <th>&nbsp;&nbsp;&nbsp;<a
423 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
424
425 <th class="navbar" width="100%"></th>
426 </tr>
427</table>
428<table border="0" cellpadding="0" cellspacing="0" width="100%%">
429 <tr>
430 <td align="left" class="footer">
Joe Gregorio52a5c532013-01-24 16:19:07 -0500431 Generated by Epydoc 3.0.1 on Thu Jan 24 16:14:42 2013
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400432 </td>
433 <td align="right" class="footer">
434 <a target="mainFrame" href="http://epydoc.sourceforge.net"
435 >http://epydoc.sourceforge.net</a>
436 </td>
437 </tr>
438</table>
439
440<script type="text/javascript">
441 <!--
442 // Private objects are initially displayed (because if
443 // javascript is turned off then we want them to be
444 // visible); but by default, we want to hide them. So hide
445 // them unless we have a cookie that says to show them.
446 checkCookie();
447 // -->
448</script>
449</body>
450</html>