Avatar billede kongen72 Nybegynder
27. maj 2010 - 22:35 Der er 16 kommentarer og
1 løsning

Kan ikke logge ind

Hej,

Er gået fra login-control til at skrive fra codebehind.
Når jeg prøver at logge ind som bruger fra forsiden, så sker der intet!

bruger følgende kode:

if (FormsAuthentication.Authenticate(UserName.Text, Password.Text))
                FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);[/i]

        <authentication mode="Forms">
        <forms 
            defaultUrl="Default.aspx"
            loginUrl="Default.aspx"
            name="adAuthCookie"
            timeout="60"
            path="/" />
        </authentication>


hvad mangler jeg ??? Hvad kan evt. gøres bedre?

tak på forhånd :-)
Avatar billede Syska Mester
27. maj 2010 - 23:51 #1
Sker der intet ... siger ikke så meget om hvad der sker. Noget må der jo af gode grunde ske ... :-)

har du prøvet at sætte et break point, for at se om din kode eksekveres ?
Avatar billede kongen72 Nybegynder
28. maj 2010 - 00:37 #3
med break point springer den over linjen : FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);

-også springer den over min catch.. fatter det ikke lige? Alt det andet køre den fint igennem.


Hvad kunne det skyldes? - p.s har mine textboxe (username og password) på masteren!
Avatar billede Syska Mester
28. maj 2010 - 01:09 #4
Hvis den "springer" over ... så er det jo forbi din "if" sætning bliver evalueret til false.

Hvis du læser følgende der ... så bliver din user/pass valideret til false, altså findes din bruger ikke i database.
http://msdn.microsoft.com/en-us/library/system.web.security.formsauthentication_members.aspx

Har du oprettet database til håndtering af brugere ?
Avatar billede kongen72 Nybegynder
28. maj 2010 - 11:35 #5
brugerne findes. fra break point kan jeg se at den får fat i Username og Password.. Så det må være noget andet
Avatar billede Syska Mester
28. maj 2010 - 11:51 #6
Username og Password er jo noget du selv kommer med som input.

Og hvor findes de brugere henne ?
Avatar billede kongen72 Nybegynder
28. maj 2010 - 11:58 #7
mine bruger findes i aspnet.Membership databaser. Kan jeg ikke hente dem ud fra databasen via denne metode?
Avatar billede Syska Mester
28. maj 2010 - 12:45 #8
Hvis app ændre sti ... så virker de ikke og der kan ske andre ting.

Men prøv fra code behind og opret en ny bruger ... og login ind med den.

mvh
Avatar billede kongen72 Nybegynder
28. maj 2010 - 15:17 #9
try
        {
            if (FormsAuthentication.Authenticate(UserName.Text, Password.Text))
            {
                FormsAuthentication.RedirectFromLoginPage(UserName.Text, RememberMe.Checked);
                Response.Redirect("~/Profil.aspx");
            }
            else
                Response.Redirect("~/Error.aspx, false);
        }
        catch (Exception err)
        {
            Label1.Text = err.Message;
        }


Har oprettet bruger via web.config


        <authentication mode="Forms">
            <forms loginUrl="Default.aspx" timeout="10">
                <credentials passwordFormat="Clear">
                    <user name="coder" password="coder"/>
                </credentials>
            </forms>
        </authentication>



Nu kan jeg logge ind med brugernavnet = "coder".. Lavede bl.a en Response.Redirect("~/Profil.aspx");

Men de andre brugere som ligger i database, kan jeg stadig ikke få adgang til.
Avatar billede Syska Mester
28. maj 2010 - 15:34 #10
Nej ... som jeg siger ... hvis du før havde en URL der så ud som:

http://localhost:8324/some-vitual-folder/
og nu bruger
http://localhost:8324/some-vitual-folder2/

Så mener jeg ikke de virker ... da den kigger på appnavnet, som her er folder navnet på din app ...

Men åben en SSMS og kig ned i databasen for at se hvordan det ser ud der ... så giver det nok lidt mening.

mvh
Avatar billede kongen72 Nybegynder
28. maj 2010 - 15:59 #11
-forstår ikke hvorfor den skulle ændre url? Hvad er SSMS og hvordan fungere det?
Avatar billede Syska Mester
28. maj 2010 - 16:33 #12
Sql Server Management Studio ... det er det eneste der kan svare på hvorfor du ikke kan logge ind med de brugere.
Avatar billede kongen72 Nybegynder
28. maj 2010 - 21:04 #13
Hvad er det helt præcis jeg skal kigge efter?
Avatar billede Syska Mester
28. maj 2010 - 21:21 #14
På forskellen mellem den bruger som virker ... og dem om ikke gør. Jeg tror de er på forskellige Web Application.
Avatar billede bvli Praktikant
29. maj 2010 - 06:37 #15
Hvis du bruger Membership, skal du bruge:

if (Membership.ValidateUser(username, password)) {
  FormsAuthentication.RedirectFromLoginPage(username, rememberMe);
}
Avatar billede kongen72 Nybegynder
09. juni 2010 - 21:05 #16
Hej bvli

Det virker helt perfekt! :-) takker

Smid et svar!
Avatar billede bvli Praktikant
09. juni 2010 - 22:40 #17
:)
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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