Jump to content
php.lv forumi

Draugiem pase


qwerty

Recommended Posts

Mēģinu saprast, kā strādā draugiem.lv pase, bet es nesaprotu kāda ir saistība starp sesiju uz mana domēna un uz draugiem.lv domēna.

 

Tātad viņi iesaka lietot https://github.com/Draugiem/draugiem-php-sdkTajā ir funkcija ->getSession(), kas kaut kā maģiski nosaka, vai lietotājs ir ielogojies, vai nav, 

 

1. Savā example.com nospiežu uz pogas "Ienākt ar draugiem.lv pasi"

2. Mani redirekto uz draugiem.lv.

3. Ievadu savus datus

4. Draugiem.lv serveris pārbauda, vai tie ir pareizi

5. Mani redirekto atpakaļ uz example.com

6. ->getSession() tagad zina, ka esmu ielogojies 

 

Pēc manas saprašanas, pēc ielogošanas draugiem.lv, viņu serveris man izveidoja sesiju un cookie ar sesijas ID. Uz sava example.com man ir jāizveido pašam sava sesija. Bet ja mani redirekto atpakaļ uz example.com, tad draugiem.lv cookie nenonāk līdz example.com, jo pieder draugiem.lv. Tad kā tā funkcija zina, ka esmu ielogojies?

 

Kur es kļūdos?

Kas pie šāda autorizēšanās modeļa man jāglabā example.com datubāzes tabulā ar informāciju par lietotājiem? Draugiem.lv user_id ?

Ja lietoju PHP platformu, kas neizmanto built-in sesijas, bet encrypted cookies, tad vai es varu sasaistīt to ->getSession ar savu mehānismu?

Link to comment
Share on other sites

1. Tu spied linku, notiek redirekts

2. Tu ielogojies draugiem.lv

3. Draugiem.lv tevi redirektē atpakaļ uz example.com, bet urlī padod kaut kādu tokenu: example.com?token=blablablabal

4. example.com lapā draugu libs nolasa šo tokenu, un sazinās pa taisno ar serveri, noskaidro kāds lietotājs atbilst šim tokenam. Ja viss ok, tad tiek pa taisno no servera iegūti lietotāja dati un izveidota sesijas uz example.com

 

Visa vajadzīgā infa tiek nodota caur urli redirekta brīdī, nekādi cepumi nekur nelidinās starp domēniem.

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...