130 lines
3.8 KiB
C#
130 lines
3.8 KiB
C#
using System;
|
|
using System.ComponentModel.DataAnnotations;
|
|
|
|
namespace gehGassi.Web.Models
|
|
{
|
|
/// <summary>
|
|
/// Viewmodel für Fido-Credentials
|
|
/// </summary>
|
|
public class FidoStoredCredentialVm
|
|
{
|
|
}
|
|
|
|
/// <summary>
|
|
/// Viewmodel für Fido-Credentials Listendarstellung
|
|
/// </summary>
|
|
public class FidoStoredCredentialListVm
|
|
{
|
|
/// <summary>
|
|
/// Eindeutige Id
|
|
/// </summary>
|
|
public long Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// Benutzername
|
|
/// </summary>
|
|
[Display(Name = "FidoStoredCredential_Username")]
|
|
public string Username { get; set; }
|
|
|
|
/// <summary>
|
|
/// Name des Fido-Devices. Es können mehrere verwendet werden
|
|
/// </summary>
|
|
[Display(Name = "FidoStoredCredential_Name")]
|
|
public string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ des FIDO-Credentials
|
|
/// </summary>
|
|
[Display(Name = "FidoStoredCredential_CredentialType")]
|
|
public FidoCredentialTypeVm CredentialType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Counter für Signature
|
|
/// </summary>
|
|
[Display(Name = "FidoStoredCredential_SignatureCounter")]
|
|
public uint SignatureCounter { get; set; }
|
|
|
|
/// <summary>
|
|
/// Registrierungsdatum
|
|
/// </summary>
|
|
[Display(Name = "FidoStoredCredential_RegDate")]
|
|
public DateTimeOffset RegDate { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Viewmodel zum anlegen eines Credentials
|
|
/// </summary>
|
|
public class CreateFidoCredentialVm
|
|
{
|
|
/// <summary>
|
|
/// Benutzername
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
[MaxLength(256, ErrorMessage = "Err_StringLength_Max")]
|
|
[EmailAddress(ErrorMessage = "Err_InvalidEmail")]
|
|
public string Username { get; set; }
|
|
|
|
/// <summary>
|
|
/// Attestation Type
|
|
/// none, direct, indirect
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public string AttType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Authenticator Attachment
|
|
/// empty, platform, cross-platform
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public string AuthType { get; set; }
|
|
|
|
/// <summary>
|
|
/// Verifikations-Methode
|
|
/// preferred, required, discouraged
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public string UserVerification { get; set; }
|
|
|
|
/// <summary>
|
|
/// Residentkey benötigt?
|
|
/// true,false. Standard: false
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public bool RequireResidentKey { get; set; }
|
|
|
|
/// <summary>
|
|
/// Name des Credentials
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
[MaxLength(100, ErrorMessage = "Err_StringLength_Max")]
|
|
[Display(Name = "FidoStoredCredential_Name", Description = "FidoStoredCredential_Name_Desc")]
|
|
public string Name { get; set; }
|
|
|
|
/// <summary>
|
|
/// Typ
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public FidoCredentialTypeVm CredentialType { get; set; }
|
|
}
|
|
|
|
/// <summary>
|
|
/// Viewmodel zum Bearbeiten eines Credentials
|
|
/// </summary>
|
|
public class EditFidoCredentialVm
|
|
{
|
|
/// <summary>
|
|
/// Id
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
public long Id { get; set; }
|
|
|
|
/// <summary>
|
|
/// Name des Credentials
|
|
/// </summary>
|
|
[Required(ErrorMessage = "Err_Required")]
|
|
[MaxLength(100, ErrorMessage = "Err_StringLength_Max")]
|
|
[Display(Name = "FidoStoredCredential_Name", Description = "FidoStoredCredential_Name_Desc")]
|
|
public string Name { get; set; }
|
|
}
|
|
}
|