En regardant ASP.NET l'Identité (l'adhésion de nouveaux membres dans la mise en œuvre ASP.NET), je suis tombé sur cette interface lors de la mise en œuvre de mes propres 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
est mis en œuvre par la valeur par défaut EntityFramework.UserStore<TUser>
qui vise essentiellement à obtenir et définir l' TUser.SecurityStamp
de la propriété.
Après quelques plus de creuser, il apparaît qu'un SecurityStamp
est Guid
qui est nouvellement créées, à des points clés dans l' UserManager
(par exemple, modification des mots de passe).
Je ne peux pas vraiment déchiffrer beaucoup au-delà de ce depuis que je suis à l'examen de ce code dans le Réflecteur. Presque tout le symbole et asynchrone de l'information a été optimisé.
Aussi, Google n'a pas été d'un grand secours.
Les Questions sont:
- Qu'est ce qu'un
SecurityStamp
dans ASP.NET Identité et à quoi sert-il? - L'
SecurityStamp
jouent aucun rôle lorsque les cookies d'authentification sont créés? - Existe-il des ramifications de sécurité ou les précautions qui doivent être prises avec cette? Par exemple, ne pas envoyer cette valeur en aval pour les clients?
Mise à jour (9/16/2014)
Code Source disponible ici: