ดู ASP.NET Identity (การเป็นสมาชิกใหม่ใน ASP.NET) ฉันเจออินเทอร์เฟซนี้เมื่อใช้งานของตัวเองUserStore
:
//Microsoft.AspNet.Identity.Core.dll
namespace Microsoft.AspNet.Identity
{
public interface IUserSecurityStampStore<TUser> :
{
// Methods
Task<string> GetSecurityStampAsync(TUser user);
Task SetSecurityStampAsync(TUser user, string stamp);
}
}
IUserSecurityStampStore
ถูกนำมาใช้โดยค่าเริ่มต้นEntityFramework.UserStore<TUser>
ซึ่งเป็นหลักและได้รับการตั้งค่าTUser.SecurityStamp
คุณสมบัติ
หลังจากการขุดเพิ่มเติมปรากฏว่า a SecurityStamp
คือสิ่งGuid
ที่สร้างขึ้นใหม่ที่ประเด็นสำคัญในUserManager
(ตัวอย่างเช่นการเปลี่ยนรหัสผ่าน)
ฉันไม่สามารถจริงๆถอดรหัสมากเกินนี้ตั้งแต่ผมตรวจสอบรหัสนี้ในการสะท้อนแสง ข้อมูลสัญลักษณ์และ async เกือบทั้งหมดได้รับการปรับให้เหมาะสม
นอกจากนี้ Google ยังไม่ได้รับความช่วยเหลือมากนัก
คำถามคือ:
- คืออะไร
SecurityStamp
ใน ASP.NET เอกลักษณ์และสิ่งที่มันใช้? - ที่ไม่
SecurityStamp
เล่นบทบาทใด ๆ เมื่อคุกกี้รับรองความถูกต้องจะถูกสร้างขึ้น? - มีข้อ จำกัด ด้านความปลอดภัยหรือข้อควรระวังที่จำเป็นต้องดำเนินการหรือไม่? ตัวอย่างเช่นอย่าส่งค่านี้ต่อเนื่องให้กับลูกค้าหรือไม่
อัปเดต (9/16/2014)
มีซอร์สโค้ดที่นี่: