Melihat ASP.NET Identity (implementasi keanggotaan baru di ASP.NET), saya menemukan antarmuka ini ketika menerapkan sendiri 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);
}
}
IUserSecurityStampStorediimplementasikan secara default EntityFramework.UserStore<TUser>yang pada dasarnya mendapatkan dan mengatur TUser.SecurityStampproperti.
Setelah beberapa penggalian lagi, tampak bahwa a SecurityStampadalah Guidyang baru dibuat pada titik-titik kunci dalam UserManager(misalnya, mengubah kata sandi).
Saya tidak bisa menguraikan lebih jauh dari ini karena saya sedang memeriksa kode ini di Reflector . Hampir semua simbol dan informasi async telah dioptimalkan.
Juga, Google tidak banyak membantu.
Pertanyaan adalah:
- Apa itu
SecurityStampASP.NET Identity dan apa gunanya? - Apakah
SecurityStampperan apa pun saat cookie otentikasi dibuat? - Apakah ada konsekuensi keamanan atau tindakan pencegahan yang perlu diambil dengan ini? Misalnya, jangan mengirim nilai ini ke hilir ke klien?
Pembaruan (9/16/2014)
Kode sumber tersedia di sini: