webForumDet fria alternativet

Döda NT loggin via asp

ASP

34 svar · 757 visningar · startad av erka · sida 2 av 2

Frågan, av erka

Jag använder nt inloggning för en site vi har och har stött på patrull. Om man inte stänger ner browsern efter utloggning så dödar man ju inte själva nt inloggningen, som vore skitfint att göra i session on end i global.asa har sökt igenom msdn och det enda jag hittar är att jag måste skapa en active x kontroll på sidan som "startar om" browsern och dödar nt inloggningen. Det skulle man ju kunna

Läs frågan i sin helhet →
Medlem sedan dec. 19996 522 inlägg
#21

Enligt han kan man inte sätta en timeout på en nt användare, det enda du kan kolla är när han loggade in, inte när han senast var aktiv. Problemet är att jag ifrån asp vill om sessionen är avslutad, logga ut han från nt kontot, men det finns tydligen inget sätt ifrån asp logga ut han från ntkontot. Då kan du överbevisa honom och förklara för mig hur man sätter en timeout / kolla aktivetet på ntkontona.

Medlem sedan mars 20002 836 inlägg
#22

Kör ni NT 4/IIS 4 eller win2000/IIS 5?

cya,
PatrikB

Medlem sedan dec. 19996 522 inlägg
#23

win2k advanced server och iis 5.0

Medlem sedan feb. 20001 590 inlägg
#24

Så länge man använder siten så är man ju inte inaktiv. Denna tid kan man ju ställa in, som sessionstiden.

Här gör man alla inställningar av inloggningar, användare mm

Lokal säkerhetsprincip -> Lokala säkerhetsinställningar

Fast jag förstår egentligen inte riktigt problemet. Menar du att en inloggad person lämnar datorn med webbläsaren uppe?

Kan du inte se till att användarna stänger webbläsaren genom att informera om detta?

Funkar inte
<A HREF='javascript:self.close();'>Logga ut</A>

Kanske inte riktigt förstått...

Medlem sedan dec. 19996 522 inlägg
#25

Men jag har förklarat detta minst 10 ggr känns det som just nu. 1. Vi måste få användarna att logga ut från NT kontot även om de loggar ut och inte stänger browser fönstret, med javascript så är det inte säkert att de loggar ut från ntkontot de kan ju svara nej på den frågan och skriva in någon annan url i fönstret och då dör inte ntlogginen.

Jag har fått förklarar för mig så här, om man loggar in med nt kontot så finns det inget sätt att kolla om nt kontot använder siten, även om han surfar så är han inloggad surfar han inte är han inloggad. Nt kontot använder ju inte siten mer än just när han loggar in, man kollar ju inte om nt kontot är aktivt utan den asp session som sätts vid inloggningen.

Enligt MS går inte detta problem att lösa på något annat sätt än just göra en liten komponent som startar om IE och stänger ner nt kontot. Ingen som har använt nt inloggning och sett till att det också stängs av även om man inte stänger ner siten. Det är ju en licens fråga också, vi har licenser per användarkonto som är aktivt på servern och inte för hur många som finns samt en belastningsfråga.

Medlem sedan jan. 2001391 inlägg
#26

Hej!

När man loggat ut kan du väl stänga webläsaren med ett javascript. window.close(); typ.

Medlem sedan dec. 19996 522 inlägg
#27

Snälla qwerty läs igenom tråden innan du svarar, det garanterar inte att de stänger fönstret har jag skrivit x antal ggr. Man kan inte stänga ett fönster utan att få upp en ruta med ja eller nej alternativ.

Medlem sedan juni 20022 599 inlägg
#28

Men om du nu har så bra kontroll över användarmiljön som du verkar ha
finns det kanske en ännu bättre lösning:

-Lägg hela hela sajten från början i en pop-up (nytt fönster).
-Anropa "window.close" då utloggning sker (eftersom detta är ett skapat fönster så får du inte frågan om du vill stänga)

På så sätt så kräver du ju bara att klienterna har JavaScript påslaget (inte att dom kör IE/Windows).
Att folk surfar direkt mot sajten i ett huvudfönster går säkert att förhindra genom att kolla om en
länk klickats eller via "window.Opener", eller nåt.

Medlem sedan dec. 19996 522 inlägg
#29

Niko, du svarar inte på min fråga, jag har redan gjort klart att jag behöver hjälp för att komma åt själva ntinloggningen från asp:n, alternativt på servernivån med någon form av service som kör sig själv och kollar om de är aktiva eller inte. Har också tänkt på din lösning tidigare men kommit underfund med att vi inte vill ha det så av dvs. olika skäl.

Medlem sedan feb. 200112 078 inlägg
#30

Enligt MS går inte detta problem att lösa på något annat sätt än just göra en liten komponent som startar om IE och stänger ner nt kontot.

Var är problemet?

Medlem sedan dec. 19996 522 inlägg
#31

Problemet är att man tycker att det borde finnas ett annat sätt att komma runt det, jag har sökt på msdn i timmar och letat men inte hittat något annat. Men när man söker på msdn så brukar man aldrig hitta det direkt utan få svaret på andra håll.

Medlem sedan juni 20022 599 inlägg
#32

erka skrev:

Niko, du svarar inte på min fråga,

Kanske inte, men jag förstår fortfarande inte hur du ska kunna lösa ett client-sideproblem server-side?

Jag gjorde följande experiment:

1. I IIS:en på maskin 1 så tar jag bort anonym access (och väljer integrated Windows) på en site.

2. På maskin 2 surfar jag mot denna site.

3. Lösenordsrutan kommer upp. Jag loggar in.

4. Jag startar om maskin 1.

5. Jag trycker [Refresh] i IE på maskin 2. Ingen lösenordsruta, fortfarande inloggad!

Inloggningsuppgifterna cashas alltså client-side (i IE) och så länge dessa är korrekta så krävs ingen ny inloggning.
Det är det som är ditt problem.
Vill du lösa det server-side så skulle jag tippa att du i princip måste dynamiskt
byta lösenord på det givna kontot. (Och det är kanske inte så lyckat.)

Medlem sedan dec. 19996 522 inlägg
#33

Eftersom sessionen och själva kontohanteringen ligger på servern borde det kunnas lösas serverside, märkligt att inte ms har integrerat ntkonton mer.

Nu ska jag pilla med omstarten av ie som jag pratade om, länken till msdn visar också hur man gör

Medlem sedan juni 20022 599 inlägg
#34

erka skrev:

Eftersom sessionen och själva kontohanteringen ligger på servern borde det kunnas lösas serverside, märkligt att inte ms har integrerat ntkonton mer.

Håller inte med riktigt. Det enda servern kan göra är att kolla att klienten skickar rätt uppgifter.
Om detta sen sker för att användaren fyllt i en inloggningsruta eller för att en viss webläsare
cachar uppgifterna kan ju servern omöjligen veta.

Men, men .. hoppas det fixar sig så bra som möjligt. :)

Medlem sedan feb. 20001 590 inlägg
#35

Loggar man in på servern från en dator i domänen, så krävs licens, och man loggar ut genom att logga ut på den lokala datorn.
Loggar man in via IE, en NTLM inloggning, i detta fall en mapp.

Förstår inte varför du måste tvinga en utloggning, när du egentligen inte behöver vara inloggad på servern. Speciellt när den inloggningen vara lika länge som sessionen?

259 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)