Asp.net-Identity
asp.net身份.GenerateUserToken()有什麼用
我了解 userManager.GeneratePasswordResetToken() 中的令牌用於在超連結中添加作為安全標識符,以便在密碼重置請求時發送給使用者。
但我不確定 userManager.GenerateUserToken() 的使用者是什麼。我能夠生成令牌,但不確定這是否可以轉換為 SAML 令牌之類的聲明並用於授權。
請幫助我理解這一點,因為我找不到任何關於此的好的文件。
GenerateUserToken()用於創建密碼重置令牌和電子郵件確認令牌。此方法採用字元串參數,該參數purpose描述將要發生的操作類型。實際上,這purpose是用於解密生成的令牌的加密密鑰。因此,您可以為自己的目的創建自己的代幣,例如您可以
ConfirmJobOffer在招聘應用程序中進行操作。您可以僅為該操作創建令牌並將帶有此令牌的連結發送給使用者:var token = userManager.GenerateUserToken(userId, "ConfirmJobOffer"); // now send this token as part of the link然後在控制器中,一旦將令牌返回給您,您就可以呼叫:
var tokenCorrect = await userManager.VerifyUserTokenAsync(userId, "ConfirmJobOffer", token); if (tokenCorrect) { // do stuff if token is correct }通常你不會
GenerateUserToken直接使用,除非你正在做自定義令牌。你會使用GeneratePasswordResetTokenAsyncandGenerateEmailConfirmationTokenAsync。請注意:這不是為了做 SAML 令牌或相關授權。