Avatar billede autohh Nybegynder
14. april 2004 - 16:27 Der er 21 kommentarer og
3 løsninger

Ip login

Heysa er igang med at lave ip login i asp :) har lavet noget kode der ser sådan ud: login.asp
<!-- #include file="admin.asp" -->
<%
if rs("ip") = AdminIP1 then
  Response.Redirect "side.asp"
else
Response.Redirect "fejl.asp"
end if
%>

og admin.asp:
<%
dim AdminIP1
dim AdminIP2
AdminIP1 = "BIIP" ' din ip ""
AdminIP2 = "BIIP" ' din ip ""
%>
for bare siden kunne ikke vises fejl :( håber der er en der kan hjælpe
Avatar billede keysersoze Ekspert
14. april 2004 - 16:33 #1
AdminIP1 = "BIIP" ' din ip
AdminIP2 = "BIIP" ' din ip

Prøv også at gøre følgende;

funktioner -> internetindstillinger -> avanceret -> fjern kryds i "vis meddelelse om uskadelige http-fejl"

så får man en fejlbesked man kan bruge til noget
Avatar billede kimgr00 Nybegynder
14. april 2004 - 16:37 #2
Jeg går ud fra at det du gerne vil er at sammenline IP adressen fra db med den fra den computer der vil logge ind har. JEg kan ikke se at du henter ip adressen fra login computeren. Det gør du med nedenstøende linjer.

'Henter IP adressen både hvis der er proxy og ikke
Request.ServerVariables("Remote_addr")
Request.ServerVariables("HTTP_X_FORWARDED_FOR")
Avatar billede autohh Nybegynder
14. april 2004 - 16:40 #3
http://www.frip.dk/autohh/tagwall/tagwall/login.asp kan stadig ikke få til at virke :) ?
Avatar billede keysersoze Ekspert
14. april 2004 - 16:43 #4
Type mismatch: 'rs'

/autohh/tagwall/tagwall/login.asp, line 3

Hvis du ikke har lavet et database-kald så kan du ikke bruge rs("IP") - så skal du som som kimgr00 er inde på benytte Request.ServerVariables
Avatar billede kimgr00 Nybegynder
14. april 2004 - 16:44 #5
det link du har sent virker ikke.
men jeg kan ikke forstå, at hvis du på login siden har følgende kode til at stå skulle det virke

<%
ip=rs("ip")
if ip = Request.ServerVariables("Remote_addr")or ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")
then
  Response.Redirect "side.asp"
else
Response.Redirect "fejl.asp"
end if
%>

og under den forudsetning at de adresser der står i db er korekte og i den rigtige form
Avatar billede autohh Nybegynder
14. april 2004 - 16:45 #6
Hmm.. kan du sætte det ind i min gode ?
Avatar billede autohh Nybegynder
14. april 2004 - 16:45 #7
gode = kode
Avatar billede kimgr00 Nybegynder
14. april 2004 - 16:45 #8
der skal lige et mellemrum får "or"
Avatar billede autohh Nybegynder
14. april 2004 - 16:46 #9
Hmm :) forstår ikke nu hvor skulle dne få min ip fra. :S
Avatar billede squashguy Nybegynder
14. april 2004 - 16:46 #10
det er faktisk lidt skidt at lave authentication kun på http_forwarded, da denne skal fakes så nemt som ingenting..
Avatar billede kimgr00 Nybegynder
14. april 2004 - 16:46 #11
får = før
Avatar billede autohh Nybegynder
14. april 2004 - 16:47 #12
Det r et ip login scripts den får ipen fra admin.asp ?
Avatar billede keysersoze Ekspert
14. april 2004 - 16:48 #13
login.asp
<!-- #include file="admin.asp" -->
<%
if Request.ServerVariables("Remote_addr") = AdminIP1 or Request.ServerVariables("Remote_addr") = AdminIP2 then
  Response.Redirect "side.asp"
else
Response.Redirect "fejl.asp"
end if
%>

og admin.asp:
<%
dim AdminIP1
dim AdminIP2
AdminIP1 = "BIIP" ' din ip
AdminIP2 = "BIIP" ' din ip
%>
Avatar billede kimgr00 Nybegynder
14. april 2004 - 16:49 #14
Har du ikke lagt nogle IP adresser ind i en database. Ellers må du lige forklare lidt nærmere, hvad det er du vil.
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:02 #15
Så vidt jeg forstår har du, i admin.asp, hardcoded 2 ip-adresser hvorfra det er tilladt at have adgang til 'side.asp' (hvad det nu er for en størrelse)

Når en bruger har klikket sig ind på 'login.asp' bliver brugerens ip-adresse valideret i forhold til de acceptable ip-adresser defineret i 'admin.asp' og disse er jvf. spm.

AdminIP1 = "BIIP" '
AdminIP2 = "BIIP" '

I din login.asp skal din kode så se ud som følger


<%
'remoteIP er her den adresse som potentiel bruger logger ind fra
remoteIP = request.servervariable("REMOTE_ADDR")

'denne valideres mod de godkendte ip's
If (remoteIP = adminIP1) or (remoteIP = adminIP2) then
  'ip match
  Response.Redirect "side.asp"
else
  'ip no match
  Response.Redirect "fejl.asp"
end if

%>

Denne stump kode vil validere remoteIP mod adminIP1 og adminIP2 og kun hvis den ene eller den anden matcher bliver man redirectet til 'side.asp' ellers til 'fejl.asp'

Håber du kan bruge det ;-)

//vbcoder
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:04 #16
Hvis jeg skal indsætte det i din kode bliver den som denne

<!-- #include file="admin.asp" -->
<%
dim remoteIP

remoteIP = Request.ServerVariables("REMOTE_ADDR")

if (remoteIP = AdminIP1) or (remoteIP = AdminIP2) then
  Response.Redirect "side.asp"
else
  Response.Redirect "fejl.asp"
end if
%>

og admin.asp:
<%
dim AdminIP1
dim AdminIP2
AdminIP1 = "BIIP" ' din ip ""
AdminIP2 = "BIIP" ' din ip ""
%>


//vbcoder
Avatar billede keysersoze Ekspert
14. april 2004 - 17:12 #17
og det var så 3 ens forslag - spændende at se hvem der kommer med det 4.
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:16 #18
Tja - gentagelse fremmer indlæringen ved du nok ;-)
Avatar billede kimgr00 Nybegynder
14. april 2004 - 17:17 #19
her er et eks. der virker
<%
'her skriver den din aktueller ip adresse
response.write Request.ServerVariables("Remote_addr") &"<br>"
response.write Request.ServerVariables("HTTP_X_FORWARDED_FOR")&"<br>"

'her skriver du den ip adresser du har fået ved te to overstående linjer
ip="xxx.xxx.xxx.xxx" 'dette er din ip

'hvis variablen ip stemmer overens skriver den side.asp hvis ikke fejl.asp
if ip = Request.ServerVariables("Remote_addr") or ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR") then
  response.write "side.asp"
else
response.write "fejl.asp"
end if
Avatar billede kimgr00 Nybegynder
14. april 2004 - 17:19 #20
er dette så svært at forstå eller har vi ikke forstået spørgsmålet???????
(Jeg lægger lige et svar ind)
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:38 #21
--> kimgr00
øh - jeg spørger lige dumt ;-)

Request.ServerVariables("HTTP_X_FORWARDED_FOR")

den synes jeg ikke jeg har set før ?
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:40 #22
nåeh - det er en apache ting ?
Avatar billede vbcoder Nybegynder
14. april 2004 - 17:42 #23
jamen det går da fremad - nu mangler du bare at få lavet siden der hedder fejl.asp
Avatar billede squashguy Nybegynder
15. april 2004 - 17:30 #24
HTTP_X_FORWARDED_FOR = en valgfri http header som en proxy server kan sætte på.

Og som jeg sagde før, hvis man kun laver authentication på denne, skal man blot kende admin's ip, og man kommer uhindret ind..
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