הכרת את כרטיס אימות טפסים ואת קובץ Cookie


עמודה קול ASP.NET תמיכה


הכרת את כרטיס אימות טפסים ואת קובץ Cookie

כדי להתאים אישית את עמודה זו לצרכים שלך, אנו מעוניינים להזמין ממך למסור את הרעיונות שלך אודות נושאים המעניינים אותך ונושאים שברצונך לראות נדונו בעתיד מאמרים במאגר הידע ועמודות קול תמיכה. באפשרותך לשלוח רעיונות ומשוב באמצעות טופס שאל עבור אותו . הוא גם קישור לטופס בחלק התחתון של עמודה זו.

מבוא

ברוך הבא אל עמודה קול התמיכה של Microsoft ASP.NET! אני Shah ב' Nilay עם צוות התמיכה של מפתחים ASP.NET. אני עבדת עם ASP.NET תמיכה עבור יותר מאחד וחצי שנים. אימות טפסים אכן תכונה אימות נהדרות. מאמר זה דן בבעיות מסוימות אשר משתמשים מציאת מבלבל עם אימות טפסים, כגון קשרי הגומלין של הכרטיס אימות טפסים ואת קובץ ה-cookie של אימות טפסים והגדרות רלוונטיות שלהם. הייתי רוצה להודות ספיר Jerry, ההפניה טכני עבור צוות התמיכה ASP.NET, לקבלת עזרה מדהימה שלו!

אנשים לעתים תוהה אודות אימות טפסים "כרטיסים" ו- "קבצי cookie" משום שהם קשורים באופן הדוק. יש שתיתקל שאלות כגון אלה: כל אדם מסבירים את ההבדל בין תפוגת קובץ cookie ותפוגה כרטיס? כאשר פג תוקפו של קובץ ה-cookie, המשתמש תנותב לדף הכניסה. מה קורה כאשר פג תוקפו של הכרטיס? הוא גם יבצע קובץ ה-cookie פג? מה SlidingUpdate בפועל עדכון?

להתמקד אלה שני היבטים של אימות טפסים במאמר זה כדי לענות על השאלות הבאות:
  • מהו כרטיס אימות טפסים ואת קובץ cookie של אימות טפסים? כיצד הם קשורים?
  • מהו התפקיד של כרטיס אימות טפסים?
  • כיצד תפוגה cookie ותפוגה כרטיס קשורות?
  • כיצד מבצע העבודה תפוגה המחוון בהקשר של כרטיס אימות טפסים וטפסים cookie אימות?
  • היכן ניתן להגדיר את המאפיין פסק זמן של קובץ cookie של אימות טפסים וכרטיס אימות טפסים?
  • תרחיש בעיית: אימות טפסים עשויה לחרוג מהזמן הקצוב לפני ערך תכונת הזמן הקצוב המוגדר בקובץ התצורה

מהו כרטיס אימות טפסים ואת קובץ cookie של אימות טפסים? כיצד הם קשורים?

קובץ cookie של אימות טפסים היא דבר אך הגורם המכיל עבור כרטיס אימות טפסים. הכרטיס מועבר כערך של קובץ cookie של אימות טפסים עם כל בקשה ומשמש על-ידי אימות טפסים, בשרת, לזהות משתמש מאומת.

עם זאת, אם אנו בוחרים להשתמש באימות טפסים cookieless, הכרטיס יועברו בכתובת ה-URL בתבנית מוצפנת. אימות טפסים cookieless משמש מאחר לעתים דפדפני הלקוח לחסום קבצי cookie. תכונה זו שהוצגו ב- Microsoft .NET Framework 2.0.

לקבלת מידע נוסף, בקר באתר האינטרנט הבא של Microsoft מפתח רשת (MSDN):

מהו התפקיד של כרטיס אימות טפסים?

הכרטיס אימות טפסים משמשת כדי להודיע על יישום ASP.NET מי אתה. לכן, הכרטיס הוא אבן הבניין של האבטחה של אימות טפסים.

הכרטיס מוצפן ונחתם באמצעות אלמנט התצורה < machineKey > של machine. config של השרת. ASP.NET 2.0 משתמש decryptionKey ואת התכונה הפענוח חדש של הרכיב < machineKey > להצפנת כרטיסי אימות טפסים. התכונה הפענוח מאפשר לך לציין את אלגוריתם ההצפנה לשימוש. ASP.NET 1.1 ו- 1.0 להשתמש בהצפנת 3DES, אשר אינו ניתן להגדרה. חדירות עם ערך הכרטיס נקבע על-ידי כשל כדי לפענח את הכרטיס בשרת. כתוצאה מכך, המשתמש תנותב לדף הכניסה.


אם היישום נפרס בחווה אינטרנט, עליך לוודא כי קבצי תצורה בכל שרת משתמשות באותו הערך עבור התכונות validationKey ו- decryptionKey בתג < machineKey > , בהם נעשה שימוש עבור hashing ופענוח של הכרטיס בהתאמה. עליך לעשות כך כיוון אינה יכולה להבטיח איזה שרת יטפל בקשות רצופות. לקבלת מידע נוסף אודות שיקולי פריסה של חוות אינטרנט והצפנה של FormsAuthenticationTicket , בקר באתר האינטרנט של MSDN הבא:ניתן למצוא הליכה באמצעות שיטות ליצירת מפתחות באופן ידני במאמרים הבאים מתוך מאגר הידע Microsoft Knowledge Base:
312906 כיצד ליצור מפתחות באמצעות Visual C# .NET לשימוש באימות טפסים

313091 כיצד ליצור מפתחות על-ידי שימוש ב- Visual Basic .NET לשימוש באימות טפסים

ניתן ליצור כרטיסי אימות טפסים באופן ידני באמצעות המחלקה FormsAuthenticationTicket . לקבלת מידע נוסף, בקר באתר האינטרנט של MSDN הבא:

כיצד תפוגה cookie ותפוגה כרטיס קשורות?

במקרה של קובץ cookie בלתי מתמשכים, אם פג תוקפו של הכרטיס, קובץ cookie גם יפוג ולאחר המשתמש תנותב לדף הכניסה. בצד השני, אם הכרטיס מסומן באופן מתמיד, כאשר קובץ ה-cookie מאוחסן בתיבת הלקוח, דפדפנים באפשרותך להשתמש ה-cookie של אימות אותו כדי להיכנס לאתר האינטרנט בכל עת. עם זאת, אנו באפשרותך להשתמש בפעולת השירות FormsAuthentication.SignOut כדי למחוק מתמיד או קבצי cookie בלתי מתמשכים במפורש.

לקבלת מידע נוסף אודות שיטת FormsAuthentication.SignOut , בקר באתר האינטרנט של MSDN הבא:עם אימות טפסים cookieless, אם הדפדפן סגורה, הכרטיס אובד כרטיס חדש ייווצר בבקשה הבא.

כיצד מבצע העבודה תפוגה המחוון בהקשר של כרטיס אימות טפסים וטפסים cookie אימות?

החלקת תפוגה פועלת בדיוק באותו האופן!

נשמח לקבל דוגמה: אם דף הכניסה מתבצעת ב- 5:00 00 00: 12:00 בצהריים, הוא אמור לפוג בכל 5:10 00 00: 12:00 בצהריים אם התכונה זמן קצוב היא 10 ואת התכונה slidingExpiration מוגדר כ- TRUE. כעת, אם כל דף אינטרנט שביקרת שוב בכל 5:05 00 00: 12:00 בצהריים, קובצי ה-cookie ואת פרק הזמן הקצוב לכרטיס יאופס ל- 5:15 00 00: 12:00 בצהריים.

הערה אם דף האינטרנט נעשית לפני מחצית מעברי זמן תפוגה, מועד התפוגה של הכרטיס לא יאופסו. דוגמה קידמה, אם כל דף האינטרנט נעשית שוב בכל 5:04 00 00: 12:00 בצהריים, קובצי ה-cookie ואת משך הזמן הקצוב של כרטיס לא יאופסו.

לקבלת מידע נוסף, בקר באתר האינטרנט של MSDN הבא:

היכן ניתן להגדיר את ערך הזמן הקצוב של קובץ cookie של אימות טפסים וכרטיס אימות טפסים?

ההגדרה היחיד שבאפשרותך לבצע היא הקובץ web. config או machine. config, בתג < טפסים > . שינוי זה יקבע את פרק הזמן הקצוב של אימות טפסים בהקשר של הכרטיס או של קובץ cookie אלא אם הכרטיס מופק באופן ידני.

<!--forms Attributes: 
name="[cookie name]" - Sets the name of the cookie used for Forms Authentication.
loginUrl="[url]" - Sets the URL to redirect client to for authentication.
protection="[All|None|Encryption|Validation]" - Sets the protection mode for data in cookie.
timeout="[minutes]" - Sets the duration of time for cookie to be valid (reset on each request).
path="/" - Sets the path for the cookie.
requireSSL="[true|false]" - Should the forms authentication cookie be sent only over SSL?
slidingExpiration="[true|false]" - Should the forms authentication cookie and ticket be reissued if they are about to expire?
-->
לקבלת מידע נוסף, בקר באתר האינטרנט של MSDN הבא:אם הכרטיס מופק באופן ידני באמצעות המחלקה FormsAuthenticationTicket , ניתן להגדיר את פרק הזמן הקצוב באמצעות התכונה תפוגה . ערך זה יעקוף את ערך התכונה זמן קצוב שצוין בקבצי תצורה.

לקבלת מידע נוסף אודות חברים FormsAuthenticationTicket , בקר באתר האינטרנט של MSDN הבא:

תרחיש בעיית: אימות טפסים עשויה לחרוג מהזמן הקצוב לפני ערך תכונת הזמן הקצוב המוגדר בקובץ התצורה

אם הכרטיס אימות טפסים מופק באופן ידני, המאפיין פסק זמן של הכרטיס תעקוף את הערך המוגדר בקובץ התצורה. לכן, אם ערך זה קטן מהערך בקובץ התצורה, טפסים כרטיס אימות יפוג לפני זמן קצוב בקובץ התצורה תכונה ערך ולהיפך. לדוגמה, נניח כי התכונהזמן קצוב < טפסים >נקבעה ל- 30 בקובץ web. config והגדר ערך התפוגה של הכרטיס הוא 20 דקות. במקרה זה, כרטיס אימות טפסים יפוג לאחר 20 דקות, המשתמש ויהיה עליך להיכנס שוב לאחר מכן.

קישורים קרובים

910439 פתרון בעיות אימות טפסים

891032 פתרון בעיות ב- ASP.NET

301240 כיצד ליישם באימות מבוסס טפסים ביישום ASP.NET שלך באמצעות .NET C#

308157 כיצד ליישם באימות מבוסס טפסים ביישום ASP.NET שלך על-ידי שימוש ב- Visual Basic .NET

אני מקווה שלמצוא מידע זה לסייע לך פשוט יותר חלק בלבול המעורבות כרטיס אימות טפסים של ASP.NET ו- cookie. זכור, העמודות קול תמיכה הן עבורך! מאחר תמיד, למען הרגש חופשי ליצור רעיונות בנושאים שברצונך לשלוח בעתיד עמודות או בשימוש מתוך מאגר הידע Microsoft Knowledge Base
טופס שאל עבור אותו .