Avatar billede golyf Nybegynder
24. oktober 2003 - 15:29 Der er 5 kommentarer og
1 løsning

Win2000 domain og IIS

Jeg skal lave en webside, som kun kan bruges af brugere som er på vores domaine. Det skal ikke være super sikkert, men helt vedligeholdelsesvenligt. For os er det nok at kunne finde windowsbrugernavnet og selvfølgelig domainenavnet, fra IIS (ASP).

Tanken er at alle der kan komme på domainet også må komme på siden. Derfor domaine navnet. Vi vil også gerne give enkelte mennesker specielle rettigheder på siden og samtidig logge hvem der kommer ind. Derfor brugernavnet.

Andre løsninger må godt forslået, men der gives kun point for løsninger som virker.

Systemer er en Win2000 server, med tilhørende IIS. Sproget er ASP og ikke ASP.Net.
Avatar billede tubber Juniormester
24. oktober 2003 - 21:35 #1
Du skal bruge noget ADSI.....har koden, finder den lige om snart.....
Avatar billede tubber Juniormester
24. oktober 2003 - 21:40 #2
On Local Error GoTo ErrorHandler
    'The text fileds where you enter your info
    vUser = txtUser.Text
    vPass = txtPass.Text
    vDomain = txtDomain.Text
    'Tells that it is a WinNT domain
    Set dso = GetObject("WinNT:")
    'Gets the variables into the ADSI and contacts the Domain Controler
    Set domain = dso.OpenDSObject("WinNT://" & vDomain & "", "" & vUser & "", "" & vPass & "", ADS_SECURE_AUTHENTICATION)
Exit Sub

'The errorhandler catches an error and tells the user what the error is
ErrorHandler:
    If Err = -2147023570 Then MsgBox "Unknown User or Bad Password", , "Login Failure"
    If Err = -2147467259 Then MsgBox "Unknown Domain", , "Login Failure"
Exit Sub
End Sub

Det er taget ud af noget VB jeg selv har strikket sammen, jeg kan desværrer ikke hjælpe med at omskrive det til asp.......
Men prøv at kigge lidt på http://msdn.microsoft.com

På denne måde er det sikkert, og det kan laves sådan at man kan tilgå det ude fra og ikke behøver sidde på en comp på domainet......

Håber det er et skridt på vejen

/Tubber
Avatar billede tubber Juniormester
24. oktober 2003 - 21:41 #3
txtUser.Text, txtPass.Text og txtDomain.Text er textfelter, så det skal nok være nogle form felter
Avatar billede golyf Nybegynder
27. oktober 2003 - 09:33 #4
Problemet er at jeg ikke ved hvad Domain'et hedder.

IIS er installeret på en Win2000 maskine, som er meldt ind i domain'et og det samme ved jeg om de klienter, som lovligt må se på siden.

Jeg havde tænkt noget i stil med: (Psodokode)

Function ValidateUser()
  if Server.Domain = Client.Domain then
    ValidateUser = Client.UserName
  else
    ValidateUser = ""
  end if

Med server tænker jeg på den Win2000 maskine, som har IIS installeret og client er den maskine, hvor brugeren sidder med sin Internet eksplorer.
Det er ok, at tricket her kun fungere med IE vertion et eller andet og nyere, og at det ikke dutter med Netscape ;-)

Jeg kan godt se at jeg skal bruge noget ADSI, men det hele skulle helst kunne fungere dynamist og uden brugeren skal skrive sit domain/brugernavn eller skrive serverens domain.
Avatar billede tubber Juniormester
27. oktober 2003 - 09:59 #5
Jeg kan desværer ikke hjælpe mere end jeg har gjort
Avatar billede golyf Nybegynder
27. oktober 2003 - 16:22 #6
Løsningen blev ikke så fin, som jeg havde håbet, men Anonym access til IIS slåes fra og dermed bruges Windows logon. Når det er sket, så dur følgende :

dim UserID, Password
UserID = Request.ServerVariables("AUTH_USER")
Password = Request.ServerVariables("AUTH_PASSWORD")
Response.write "Mig : " & UserID & " , " & Password &  "<br>"
 
Dim objIADSUser
Set objIADSUser = GetObject("WinNT://domaine/" & UserID & ",user")
Response.Write "Name : " & objIADSUser.Name & "<br>"
Response.Write "FullName : " &objIADSUser.FullName & "<br>"
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
Kurser inden for grundlæggende programmering

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