Jump to content
php.lv forumi

API pieprasījumu autentifikācija


briit

Recommended Posts

Sveiki!

Es veidoju vienu vienkāršu REST API un esmu ticis līdz autentifikācijai: pieprasījumus, kas izmaina datus manā galā, es atļaušu veikt tikai uzticamiem cilvēkiem. Tā kā projekts ir orientēts uz vienkāršību (manā galā), tāpēc es nevēlos ieviest kaut kādu vairāku soļu autentifikācijas procesu kāds ir OpenIDam vai oAuth, ne arī pašus šos risinājumus - gribu vienkāršu un efektīvu.

Mana ideja ir: Lietotājam ir unikāls shared secret, ko viņš ir ieguvis reģistrējoties pie manis. Šis secret netiek sūtīts pa tīklu, bet katrs pieprasījums tiek "parakstīts" - md5($shared_secret.$current_timestamp), tiek nosūtīts arī pats taimstamps - ja tas atšķirās vairāk kā par $delta, tad ir nederīgs pieprasījums. Lielākā atšķirība no spicajiem autentifikācijas formātiem ir, ka shared secret, ar ko parakstīt pieprasījumu, ir mūžīgs, nevis noskaidrojams sesijas sākumā, kas krietni sarežģī gan izstrādi manā galā, gan programmētājam, kas darbosies ar manu API, bet ieguvumu neredzu.

Un jautājums: vai ar šādu drošību ir pietiekami, lai zinātu, ka Jānis ir tas pats Jānis nevis Hakeris Pēteris ? Vai nav kādu acīmredzamu ierobežojumu, ko es nespēju saskatīt ? (Ar nosacījumu, ka shared secret ir drošībā)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...