如何为 asp.net 身份创建安全戳值 (IUserSecurityStampStore)
How to create a security stamp value for asp.net identity (IUserSecurityStampStore)
在我的 MVC-5 应用程序中,我必须手动创建安全标记值。身份团队的当前实现似乎使用了 guid。
Guid.NewGuid().ToString("D")
我自己创建一个新的 Guid 用作新的安全标记值是否安全,或者这会导致 asp.net 身份的未来实施出现问题吗?
有没有一种方法可以让身份框架为我创建这样一个标记值,以便我的实现对于将来的更改是安全的?
在实体框架的身份实现文档中,它似乎可以是任何随机值:
IdentityUser.SecurityStamp Property
因此,guid 似乎很好,下面的代码对于 asp.net 身份的未来版本也应该是可靠的。
Guid.NewGuid().ToString("D")
ASP.NET 身份 UserManager
提供方法 UpdateSecurityStampAsync(string userId)
将自动更新用户安全标记。这样下次 validateInterval
结束时,用户将自动注销并强制再次 sign.in。
UserManager.UpdateSecurityStampAsync(userId);
聚会有点晚了,但这些似乎工作得很好:
await _userManager.UpdateSecurityStampAsync(user);
await _userManager.UpdateNormalizedEmailAsync(user);
await _userManager.UpdateNormalizedUserNameAsync(user);
await _userManager.SetLockoutEnabledAsync(user, true);
在我的 MVC-5 应用程序中,我必须手动创建安全标记值。身份团队的当前实现似乎使用了 guid。
Guid.NewGuid().ToString("D")
我自己创建一个新的 Guid 用作新的安全标记值是否安全,或者这会导致 asp.net 身份的未来实施出现问题吗?
有没有一种方法可以让身份框架为我创建这样一个标记值,以便我的实现对于将来的更改是安全的?
在实体框架的身份实现文档中,它似乎可以是任何随机值:
IdentityUser.SecurityStamp Property
因此,guid 似乎很好,下面的代码对于 asp.net 身份的未来版本也应该是可靠的。
Guid.NewGuid().ToString("D")
ASP.NET 身份 UserManager
提供方法 UpdateSecurityStampAsync(string userId)
将自动更新用户安全标记。这样下次 validateInterval
结束时,用户将自动注销并强制再次 sign.in。
UserManager.UpdateSecurityStampAsync(userId);
聚会有点晚了,但这些似乎工作得很好:
await _userManager.UpdateSecurityStampAsync(user);
await _userManager.UpdateNormalizedEmailAsync(user);
await _userManager.UpdateNormalizedUserNameAsync(user);
await _userManager.SetLockoutEnabledAsync(user, true);