Avatar billede mathiasiversen Nybegynder
28. august 2004 - 10:48 Der er 2 kommentarer og
1 løsning

FormsAuthentication, tilføje information i cookie

Hej

I mit system bruger jeg forms based authentication. Samtidig bruger jeg sessionen til at holde på oplysninger som UserID samt forskellige andre oplysninger. Jeg har lidt problemmer med at brugeren til tider bliver "smidt af". Dette kan jeg naturligvis ikke bruge til noget, så derfor vil jeg gerne gemme disse oplysninger i den cookie, som alligevel bliver sendt imellem client og server. Hvordan kan dette gøres?

Ligenu ser det sådan ud når jeg logger ind:
FormsAuthentication.RedirectFromLoginPage(txtUserName.Text, ckbAutomaticLogin.Checked);

Jeg håber at der er nogen der kan hjælpe.

/Mathias
Avatar billede snepnet Nybegynder
28. august 2004 - 11:03 #1
Denne her må være noget for dig :
http://support.microsoft.com/?kbid=301240

Det er nok denne del af siden der er interessant :

Generate the authentication ticket, encrypt it, create a cookie, add it to the response, and redirect the user. This gives you more control in how you create the cookie. You can also include custom data along with the FormsAuthenticationTicket in
this case.

private void cmdLogin_ServerClick(object sender, System.EventArgs e)
{
  if (ValidateUser(txtUserName.Value,txtUserPass.Value) )
  {
      FormsAuthenticationTicket tkt;
      string cookiestr;
      HttpCookie ck;
      tkt = new FormsAuthenticationTicket(1, txtUserName.Value, DateTime.Now,
DateTime.Now.AddMinutes(30), chkPersistCookie.Checked, "your custom data");
      cookiestr = FormsAuthentication.Encrypt(tkt);
      ck = new HttpCookie(FormsAuthentication.FormsCookieName, cookiestr);
      if (chkPersistCookie.Checked)
      ck.Expires=tkt.Expiration;   
            ck.Path = FormsAuthentication.FormsCookiePath;
      Response.Cookies.Add(ck);

      string strRedirect;
      strRedirect = Request["ReturnUrl"];
      if (strRedirect==null)
            strRedirect = "default.aspx";
        Response.Redirect(strRedirect, true);
  }
  else
      Response.Redirect("logon.aspx", true);
}
Avatar billede mathiasiversen Nybegynder
28. august 2004 - 22:44 #2
jeg bukker og takker mange gange. Svar så du kan få dine velfortjente point.
Avatar billede snepnet Nybegynder
29. august 2004 - 00:19 #3
det var så lidt mathias :o)
mvh
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