48 lines
880 B
C#
48 lines
880 B
C#
using System.Text.Json.Serialization;
|
|
|
|
namespace DysonNetwork.Common.Models.Auth;
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter))]
|
|
public enum AuthChallengeType
|
|
{
|
|
// Authentication challenges
|
|
Password = 0,
|
|
EmailCode = 1,
|
|
PhoneCode = 2,
|
|
Totp = 3,
|
|
WebAuthn = 4,
|
|
RecoveryCode = 5,
|
|
|
|
// Authorization challenges
|
|
Consent = 10,
|
|
TwoFactor = 11,
|
|
|
|
// Account recovery challenges
|
|
ResetPassword = 20,
|
|
VerifyEmail = 21,
|
|
VerifyPhone = 22,
|
|
|
|
// Security challenges
|
|
Reauthentication = 30,
|
|
DeviceVerification = 31,
|
|
|
|
// Custom challenges
|
|
Custom = 100
|
|
}
|
|
|
|
[JsonConverter(typeof(JsonStringEnumConverter))]
|
|
public enum AuthChallengePlatform
|
|
{
|
|
Web = 0,
|
|
Ios = 1,
|
|
Android = 2,
|
|
Desktop = 3,
|
|
Api = 4,
|
|
Cli = 5,
|
|
Sdk = 6,
|
|
|
|
// Special platforms
|
|
System = 100,
|
|
Unknown = 999
|
|
}
|