ASP.NET Identity(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
(たとえば、パスワードの変更)。
Reflectorでこのコードを調べているので、これ以上は解読できません。ほとんどすべてのシンボルと非同期情報が最適化されています。
また、Googleはあまり役に立ちませんでした。
質問は:
- 何が
SecurityStamp
ASP.NETアイデンティティで、それがために使用何ですか? SecurityStamp
認証Cookieが作成されるときに、は何らかの役割を果たしますか?- これを使用する必要があるセキュリティの影響または予防策はありますか?たとえば、この値を下流のクライアントに送信しませんか?
アップデート(2014年9月16日)
ここで入手可能なソースコード: