FWIW будьте очень осторожны с хранением чего-то вроде идентификатора пользователя в файле cookie в незашифрованном виде. Это делает ваш сайт очень подверженным отравлению cookie, когда пользователи могут легко выдать себя за другого пользователя. Если вы рассматриваете что-то подобное, я настоятельно рекомендую использовать файл cookie для проверки подлинности форм напрямую.
bool persist = true;
var cookie = FormsAuthentication.GetAuthCookie(loginUser.ContactId, persist);
cookie.Expires = DateTime.Now.AddMonths(3);
var ticket = FormsAuthentication.Decrypt(cookie.Value);
var userData = "store any string values you want inside the ticket
extra than user id that will be encrypted"
var newTicket = new FormsAuthenticationTicket(ticket.Version, ticket.Name,
ticket.IssueDate, ticket.Expiration, ticket.IsPersistent, userData);
cookie.Value = FormsAuthentication.Encrypt(newTicket);
Response.Cookies.Add(cookie);
Затем вы можете прочитать это в любое время со страницы ASP.NET, выполнив
string userId = null;
if (this.Context.User.Identity.IsAuthenticated)
{
userId = this.Context.User.Identity.Name;
}