<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="et">
	<id>http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Autentimise_m%C3%A4rkmed%3A_mobiil-ID</id>
	<title>Autentimise märkmed: mobiil-ID - Redigeerimiste ajalugu</title>
	<link rel="self" type="application/atom+xml" href="http://www.lambda.ee/w/index.php?action=history&amp;feed=atom&amp;title=Autentimise_m%C3%A4rkmed%3A_mobiil-ID"/>
	<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;action=history"/>
	<updated>2026-11-07T02:37:16Z</updated>
	<subtitle>Selle lehekülje redigeerimiste ajalugu</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13459&amp;oldid=prev</id>
		<title>PriitJ: /* Realiseerimine Pythonis */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13459&amp;oldid=prev"/>
		<updated>2016-11-24T06:17:07Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Realiseerimine Pythonis&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 24. november 2016, kell 08:17&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l20&quot;&gt;20. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;20. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; import suds&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; import suds&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; client = suds.client(&amp;lt;nowiki&amp;gt;&quot;https://tsp.demo.sk.ee/?wsdl&quot;&amp;lt;/nowiki&amp;gt;)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; client = suds.client&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;.Client&lt;/ins&gt;(&amp;lt;nowiki&amp;gt;&quot;https://tsp.demo.sk.ee/?wsdl&quot;&amp;lt;/nowiki&amp;gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Järgnevad käsud on ka kõik Pythonis.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Järgnevad käsud on ka kõik Pythonis.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key lambdadb:diff:1.41:old-13457:rev-13459:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13457&amp;oldid=prev</id>
		<title>PriitJ: /* Realiseerimine Pythonis */</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13457&amp;oldid=prev"/>
		<updated>2016-11-23T12:25:27Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Realiseerimine Pythonis&lt;/span&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;et&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;←Vanem redaktsioon&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Redaktsioon: 23. november 2016, kell 14:25&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l20&quot;&gt;20. rida:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;20. rida:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; import suds&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; import suds&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; client = suds.client(&quot;https://tsp.demo.sk.ee/?wsdl&quot;)&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;   &amp;gt;&amp;gt;&amp;gt; client = suds.client(&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;nowiki&amp;gt;&lt;/ins&gt;&quot;https://tsp.demo.sk.ee/?wsdl&quot;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&amp;lt;/nowiki&amp;gt;&lt;/ins&gt;)&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Järgnevad käsud on ka kõik Pythonis.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;Järgnevad käsud on ka kõik Pythonis.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
	<entry>
		<id>http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13456&amp;oldid=prev</id>
		<title>PriitJ: Uus lehekülg: &#039;Ametlik dokumentatsioon ID-teenuste arendajale: http://id.ee/index.php?id=30388  [http://www.sk.ee/upload/files/DigiDocService_spec_est.pdf DigiDocService spetsifikatsioon]  [htt...&#039;</title>
		<link rel="alternate" type="text/html" href="http://www.lambda.ee/w/index.php?title=Autentimise_m%C3%A4rkmed:_mobiil-ID&amp;diff=13456&amp;oldid=prev"/>
		<updated>2016-11-23T12:21:42Z</updated>

		<summary type="html">&lt;p&gt;Uus lehekülg: &amp;#039;Ametlik dokumentatsioon ID-teenuste arendajale: http://id.ee/index.php?id=30388  [http://www.sk.ee/upload/files/DigiDocService_spec_est.pdf DigiDocService spetsifikatsioon]  [htt...&amp;#039;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Uus lehekülg&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Ametlik dokumentatsioon ID-teenuste arendajale: http://id.ee/index.php?id=30388&lt;br /&gt;
&lt;br /&gt;
[http://www.sk.ee/upload/files/DigiDocService_spec_est.pdf DigiDocService spetsifikatsioon]&lt;br /&gt;
&lt;br /&gt;
[https://demo.sk.ee/sample/mid_auth_sample/ PHP näidisrakendus]. Sellelt lehelt leiad ka enamuse vajalikke linke testimiseks.&lt;br /&gt;
&lt;br /&gt;
Reaalseks kasutuseks on vaja teha SK-ga leping ja saada pääsutõend, ilma selleta on ligipääsetav ainult testteenus (kus on võimalik reaalseid telefone kasutada, esmaseks testimiseks piisab testnumbritest)&lt;br /&gt;
&lt;br /&gt;
== Arhitektuur ==&lt;br /&gt;
&lt;br /&gt;
Mobiil-ID on realiseeritud SOAP teenusena. Seetõttu pole mingit ametlikku teeki selle kasutamiseks vaja, piisab SOAP kliendist. Koosneb kahest päringust:&lt;br /&gt;
* &amp;lt;code&amp;gt;MobileAuthenticate&amp;lt;/code&amp;gt; - saadab teenusele numbri, saab tagasi sessiooni id ja PIN koodi. Kliendi telefonis küsitakse PIN-i.&lt;br /&gt;
* &amp;lt;code&amp;gt;GetMobileAuthenticateStatus&amp;lt;/code&amp;gt; - annab autentimise tulemuse (või &amp;quot;OUTSTANDING_TRANSACTION&amp;quot;, mis tähendab, et kasutaja pole PIN-i sisestamisega veel valmis). Tulemust küsitakse eelmisest päringust saadud sessiooni id-ga.&lt;br /&gt;
&lt;br /&gt;
== Realiseerimine Pythonis ==&lt;br /&gt;
&lt;br /&gt;
  sudo apt-get install python-suds&lt;br /&gt;
&lt;br /&gt;
Tekitame SOAP kliendi&lt;br /&gt;
&lt;br /&gt;
  &amp;gt;&amp;gt;&amp;gt; import suds&lt;br /&gt;
  &amp;gt;&amp;gt;&amp;gt; client = suds.client(&amp;quot;https://tsp.demo.sk.ee/?wsdl&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
Järgnevad käsud on ka kõik Pythonis.&lt;br /&gt;
&lt;br /&gt;
Alustame autentimist. &amp;lt;code&amp;gt;MobileAuthenticate&amp;lt;/code&amp;gt; spekki vaata ametlikust dokumentatsiooonist.&lt;br /&gt;
&lt;br /&gt;
   request = client.service.MobileAuthenticate(&lt;br /&gt;
            &amp;quot;&amp;quot;, # isikukood&lt;br /&gt;
            &amp;quot;&amp;quot;, # riigi kood&lt;br /&gt;
            &amp;#039;+37200000766&amp;#039;, # telefoninumber (siin testnumber)&lt;br /&gt;
            &amp;#039;EST&amp;#039;,  # või RUS, ENG&lt;br /&gt;
            &amp;#039;Testimine&amp;#039;,  # testteenuses see, lives oma rakenduse nimi&lt;br /&gt;
            &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;quot;&amp;quot;,&lt;br /&gt;
            &amp;#039;asynchClientServer&amp;#039;,  # staatus saadakse teada pollides&lt;br /&gt;
            0,&lt;br /&gt;
            False,&lt;br /&gt;
            False)&lt;br /&gt;
&lt;br /&gt;
Saame teada kas õnnestus&lt;br /&gt;
&lt;br /&gt;
  print request.Status&lt;br /&gt;
&lt;br /&gt;
Isikukood ja muud isikuandmed on õnnestumise korral vastuses, aga kasutaja pole veel autenditud! Need andmed  on seotud sisse toksitud telefoninumbriga, aga kasutaja peab veel tõestama, et tegu on ta enda telefoniga.&lt;br /&gt;
&lt;br /&gt;
  print request.UserIDCode&lt;br /&gt;
&lt;br /&gt;
PIN-koodi tuleb nüüd kasutajale näidata&lt;br /&gt;
&lt;br /&gt;
  print request.ChallengeID&lt;br /&gt;
&lt;br /&gt;
Ja tulemuse küsimiseks kood&lt;br /&gt;
&lt;br /&gt;
  sessid = str(request.Sesscode)&lt;br /&gt;
&lt;br /&gt;
Järgmist päringut tuleb vajadusel pollida mitu korda, esimene päring on mõistlik umbes 15 sekundi pärast.&lt;br /&gt;
&lt;br /&gt;
  request2 = client.service.GetMobileAuthenticateStatus(&lt;br /&gt;
            sessid, # MobileAuthenticate vastusest&lt;br /&gt;
            False # teenus vastab kohe, ei oota valmis saamist&lt;br /&gt;
           )&lt;br /&gt;
&lt;br /&gt;
Kõiki võimalikke staatuseid vt jällegi ametlikust dokumentatsioonist. &amp;quot;OUTSTANDING_TRANSACTION&amp;quot; tähendab, et oota natuke ja polli uuesti.&lt;br /&gt;
&lt;br /&gt;
  print request2.Status&lt;/div&gt;</summary>
		<author><name>PriitJ</name></author>
	</entry>
</feed>