FAQ |
Kalender |
![]() |
#1 | ||
|
|||
Medlem
|
Hallå.
Här kommer en fråga angående säkerhet och autentisering angående inkommande "requests" hur jag ska kunna validera att avsändare är den han påstår sig vara. Det är så att på min sida så har jag en service som tar emot data. Jag har även flera kända användare. Exempel på en användare kan vara Erik. Tanken är att min service ska kunna ta emot data från olika användare. Problemet är att jag vet inte bästa sättet att kontrollera att datan jag får är verkligen från den användaren den påstår sig vara. Se bifogade bilden. Fakta: - Det går att lägga till fler attribut på användaren - Användaren är inte bunden till en specifik ip Min fråga är: Vilka autentiseringslösningar kan jag använda som även sätter stop för replikation och man in the middle attack? Senast redigerad av weirdbyte den 2009-12-05 klockan 17:19 Anledning: la till krav |
||
![]() |
![]() |
![]() |
#2 | ||
|
|||
Mycket flitig postare
|
Citat:
Varje användare har ett lösenord. I varje request skapas en kontrollsumma, t.ex. md5, av "postad data och lösenordet" Lösenordet skickas inte med. När requesten valideras gör den motsvarande kontrollsumma av "postad data (utan kontrollsumma) och lösenord". Om kontrollsummorna inte stämmer har inte användaren postat formuläret. Detta tillvägagångssätt används bl.a. av Payson och Facebook Connect. |
||
![]() |
![]() |
![]() |
#3 | ||
|
|||
Medlem
|
Blir det då inte lätt att gissa lösenordet?
Ha en dator igång som MD5(data+*gissning av lösenord) tills summan är samma som skickades i meddelandet? |
||
![]() |
![]() |
![]() |
#4 | ||
|
|||
Har WN som tidsfördriv
|
Det kan tänkas motarbetas genom att bara tillåta X antal felaktiga postningar, sen låses det kontot för vidare requests och måste låsas upp manuellt. Exempelvis genom inlogg på någon form av admin-sida, alternativt att det stannar låst i ett par minuter och låses sen automatiskt upp igen vid nästa korrekta request.
|
||
![]() |
![]() |
![]() |
#5 | ||
|
|||
Mycket flitig postare
|
Facebook har iallafall löst det så att man måste skicka med ett "löpnummer" i $data som tickar upp för varje request. Då får du en unik kontrollsumma för varje request.
Dock osäker på om den tickar upp även vid felaktig request... |
||
![]() |
![]() |
![]() |
#6 | ||
|
|||
Medlem
|
|||
![]() |
![]() |
![]() |
#7 | ||
|
|||
Har WN som tidsfördriv
|
Du kan ju göra en riktig Webservice istället, då kan du lägga in en auth() funktion. En sådan använder typ alla "riktiga" Webservices. En auth returnerar oftast en checksum/key/etc som du måste använda för varje ytterligare anrop du gör. Nyckel gäller bara i en session. När du kör en auth måste du ange exempelvis anv.+ lösenord eller någon API nyckel. Dessa skickar du med fördel över https om du vill vara säkrare(e)
|
||
![]() |
![]() |
![]() |
#8 | ||
|
|||
Medlem
|
Då blir det väl dubbel-anrop. Hade hoppats på att det inte skulle behövas
![]() |
||
![]() |
![]() |
Svara |
|
|