Ejemplo n.º 1
0
 /// <summary>
 /// Generate a 2FA secret
 /// </summary>
 /// <param name="token">The user's token</param>
 /// <returns>the secret or null</returns>
 public static Account GenerateSecretForAccount(string token)
 {
     try
     {
         string secret = TwoFactor.GenerateSecret();
         using (var context = new OverstagContext())
         {
             var a = context.Accounts.First(f => f.Token == token);
             a.TwoFactor      = secret;
             a.TwoFactorCodes = string.Join(',', TFA.GenerateBackupCodes());
             context.Accounts.Update(a);
             context.SaveChanges();
             return(a);
         }
     }
     catch
     {
         return(null);
     }
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Generates a new 2fa secret
 /// </summary>
 /// <returns>A new secret</returns>
 public static string GenerateSecret() => TwoFactor.GenerateSecret();