Avatar billede mikkelbreum Nybegynder
27. april 2009 - 15:28 Der er 3 kommentarer

.NET Autentificering gennem AJAX?

Svar gerne på dansk :)

Is it possible to pass credentials using AJAX to a webserver that request www-authentication?

I want to log in to a website that uses .NET Bsic www-authentication, and pass the credentials using ajax. When visiting the server with a browser, the browser prompts the user with an authentication/login window.

The html header contains this:

WWW-Authenticate: Basic
realm="hosting.xp"
MicrosoftSharePointTeamServices: 6.0.2.6568
X-Powered-By: ASP.NET

I want to access the site 'behind the scenes' by calling it from an ajax object, but I'm not sure how to handle the http header that requests the authentication.

I would like the ajax call to result in a specific user being logged in (the cookie set) so that the user can procedd to the site later and be 'already' logged in.

Can this be done in the way I describe here?
Avatar billede anitavizdk Nybegynder
27. april 2009 - 19:40 #1
Eneste måde jeg lige kan se du kan kommunikerer med web serveren gennem WWW-Authenticate: Basic skulle da være at sende brugernavn/password med i din ajax request

www.testsite.dk/test.php" target="_blank">http://bruger:password@www.testsite.dk/test.php

Dette burde vel også virke med din ajax request.
Avatar billede anitavizdk Nybegynder
27. april 2009 - 19:41 #2
Ser udtil at ekspertne mener der skal lidt ekstra på mit link men læs fra http:// og frem efter
Avatar billede mikkelbreum Nybegynder
28. april 2009 - 10:41 #3
Den metode kender jeg godt, men den indebærer nogle problemer. Et er, at metoden ikke virker i alle browsere (så vidt jeg ved). Men et andet problem er, at nogle browsere (fx Firefox 3 på Mac) så kommer med et andet pop-up der siger ("you are about to log in to the site bla bla as bla bla, are you sure you want to continue.. etc")

Det jeg ønsker er at 'fange' enhver kommunication mellem de to websites (det brugeren er på, og det der skal logges ind på) før de bliver 'håndteret' af browseren. Jeg går ud fra at man med et ajax objekt kan isolere de events der trigger de forksellige browser behaviors før de når selve browseren, og i stedet håndtere dem 'internt' med javascript og evt et php script.

Hvis jeg har forstået det rigtigt trigges browserens login-vindue af en http header der rummer noget i retning af 'authentication required, type:basic, realm hosting.xp' ..hvordan syntaksen ny lige er, og herefter venter den på en retur header med noget info ala username:passwd i base64 format.. Kan man ikke få et ajax objekt til at håndtere alt dette uden om browserens 'proprietære' adfærd?

lyder det fornyftigt, eller er jeg helt uden clue?

jeg kunne også spørge sådan her:
Hvordan kan man lave en Single Sign On (SSO) løsning til Joomla (Apache/PHP teknologi) der automatisk samtidigt logger en bruger på et Sharepoint site (MS IIS/ASP.NET teknologi), således at brugeren efterfølgende kan klikke sig videre til Sharepoint sitet uden at blive bedt om at logge ind, ligesom hvis brugeren allerede havde logget ind manuelt, og stadig have samme SESSION aktiv?
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester