查看ASP.NET标识(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
(例如,更改密码)的关键点上新生成的a 。
由于我正在Reflector中检查此代码,因此我无法真正理解更多内容。几乎所有符号和异步信息都已优化。
另外,Google并没有太大帮助。
问题是:
- 什么是
SecurityStamp
ASP.NET身份标识?它的作用是什么? SecurityStamp
创建身份验证Cookie时是否发挥作用?- 是否需要采取任何安全措施或预防措施?例如,不将此值向下游发送给客户吗?
更新(9/16/2014)
此处提供源代码: