Asp.net-Identity-2
GenerateEmailConfirmationToken() 到底在做什麼?
我有兩個關於 ASP.Identity 2.0“GenerateEmailConfirmationToken/GenerateEmailConfirmationTokenAsync”方法的問題。
// Generate token var token = Url.Encode(await UserManager.GenerateEmailConfirmationTokenAsync(user.Id));
- 這個令牌是否儲存在數據庫中?我想應該是的。但在哪個領域?我只是在 User 表上找到“PasswordHash”和“SecurityStamp”。兩者似乎都不匹配。
- 我的印像是,一旦我生成了一個電子郵件令牌,User 表的 EmailConfirmed 欄位將設置為 false。但它保持真實。那麼,如果相應的使用者帳戶保持確認,創建令牌的目的是什麼?或者換句話說:我需要做什麼才能生成新令牌並將帳戶設置為未確認?
總結評論中的討論:代幣沒有儲存在任何地方——它們是從 SecruityStamp 加密生成的(不完全確定生成的確切過程),當它們回來時,它們可以被解密和比較。
至於
EmailConfirmed欄位 - 這是由您維護和照顧的。您需要手動拒絕沒有確認電子郵件的使用者登錄。當電子郵件確認通過時,您需要設置標誌。