2011-08-28 12 views
31

フォーム認証Cookieは暗号化されています。私のコードの背後にあるフォーム認証Cookieのコンテンツを読む方法。フォーム認証cookieをasp.netコードから読み取る

if (Request.Cookies[".ASPXAUTH"] != null) 
{ 
    HttpCookie myCookie = new HttpCookie(".ASPXAUTH"); 
} 
+0

可能な重複http://stackoverflow.com/questions/2921387/get-the-aspxauth-cookie-value-programaticallyが提供する復号化方法でチケットをアクセスすることができます – xsari3x

答えて

72

あなたはをFormsAuthentication

HttpCookie authCookie = Request.Cookies[FormsAuthentication.FormsCookieName]; 
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(authCookie.Value); 

string cookiePath = ticket.CookiePath; 
DateTime expiration = ticket.Expiration; 
bool expired = ticket.Expired; 
bool isPersistent = ticket.IsPersistent; 
DateTime issueDate = ticket.IssueDate; 
string name = ticket.Name; 
string userData = ticket.UserData; 
int version = ticket.Version; 
+0

チケットからデータを抽出するには....以下のような認証クッキーを作成するとします。 FormsAuthenticationTicketチケット=新しいFormsAuthenticationTicket( 1、 ユーザ名、 DateTime.Now、 DateTime.Now.AddMinutes(30)、 isPersistent、 のuserData、 FormsAuthentication.FormsCookiePath)。どのように解読後にチケットから上記のデータを取得するのですか? plzz guide me .......ありがとう – Thomas

+0

解読後、チケットのプロパティに直接アクセスできます。これは、プロパティの一覧を示します。http://msdn.microsoft.com/en-us/library/system.web.security.formsauthenticationticket.aspxチケットのデータにアクセスする例を使って答えを更新しました。 – RyanW

+0

ただ誤字:ticket.IsPersistantはチケットでなければなりません.IsPersistent – Raghav

関連する問題