Dans mon application MVC-5, je dois créer les valeurs de timbre de sécurité manuellement . La mise en œuvre actuelle de l'équipe identité semble utiliser un guide.
Guid.NewGuid().ToString("D")
Est-il prudent de créer moi-même un nouveau Guid à utiliser comme nouvelle valeur de tampon de sécurité ou est-ce que cela posera des problèmes lors de futures mises en œuvre de l'identité asp.net?
Existe-t-il une méthode permettant au cadre d’identité de créer pour moi une telle valeur de tampon afin que mon implémentation soit sûre pour les modifications futures?
Hors de la documentation de l'implémentation d'identité pour l'entité-cadre, il semble que ce puisse être n'importe quelle valeur aléatoire:
Propriété IdentityUser.SecurityStamp
Un guid semble donc correct et le code suivant devrait être fiable également avec les futures versions de l’identité asp.net.
Guid.NewGuid().ToString("D")
Identité ASP.NET UserManager
fournit la méthode UpdateSecurityStampAsync(string userId)
qui mettra automatiquement à jour le sceau de sécurité des utilisateurs. Pour que la prochaine fois que validateInterval
se termine, l'utilisateur sera automatiquement déconnecté et obligé de se reconnecter.
UserManager.UpdateSecurityStampAsync(userId);
un peu tard pour la fête, mais ceux-ci semblent bien fonctionner:
await _userManager.UpdateSecurityStampAsync(user);
await _userManager.UpdateNormalizedEmailAsync(user);
await _userManager.UpdateNormalizedUserNameAsync(user);
await _userManager.SetLockoutEnabledAsync(user, true);