mirror of
https://github.com/bitwarden/server.git
synced 2025-04-08 22:58:11 -05:00
95 lines
2.9 KiB
C#
95 lines
2.9 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using Bit.Core.Utilities;
|
|
using Bit.Core.Vault.Models.Data;
|
|
|
|
namespace Bit.Api.Vault.Models;
|
|
|
|
public class CipherFido2CredentialModel
|
|
{
|
|
public CipherFido2CredentialModel() { }
|
|
|
|
public CipherFido2CredentialModel(CipherLoginFido2CredentialData data)
|
|
{
|
|
CredentialId = data.CredentialId;
|
|
KeyType = data.KeyType;
|
|
KeyAlgorithm = data.KeyAlgorithm;
|
|
KeyCurve = data.KeyCurve;
|
|
KeyValue = data.KeyValue;
|
|
RpId = data.RpId;
|
|
RpName = data.RpName;
|
|
UserHandle = data.UserHandle;
|
|
UserName = data.UserName;
|
|
UserDisplayName = data.UserDisplayName;
|
|
Counter = data.Counter;
|
|
Discoverable = data.Discoverable;
|
|
CreationDate = data.CreationDate;
|
|
}
|
|
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string CredentialId { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string KeyType { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string KeyAlgorithm { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string KeyCurve { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string KeyValue { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string RpId { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string RpName { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string UserHandle { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string UserName { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string UserDisplayName { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string Counter { get; set; }
|
|
[EncryptedString]
|
|
[EncryptedStringLength(1000)]
|
|
public string Discoverable { get; set; }
|
|
[Required]
|
|
public DateTime CreationDate { get; set; }
|
|
|
|
public CipherLoginFido2CredentialData ToCipherLoginFido2CredentialData()
|
|
{
|
|
return new CipherLoginFido2CredentialData
|
|
{
|
|
CredentialId = CredentialId,
|
|
KeyType = KeyType,
|
|
KeyAlgorithm = KeyAlgorithm,
|
|
KeyCurve = KeyCurve,
|
|
KeyValue = KeyValue,
|
|
RpId = RpId,
|
|
RpName = RpName,
|
|
UserHandle = UserHandle,
|
|
UserName = UserName,
|
|
UserDisplayName = UserDisplayName,
|
|
Counter = Counter,
|
|
Discoverable = Discoverable,
|
|
CreationDate = CreationDate
|
|
};
|
|
}
|
|
}
|
|
|
|
static class CipherFido2CredentialModelExtensions
|
|
{
|
|
public static CipherLoginFido2CredentialData[] ToCipherLoginFido2CredentialData(this CipherFido2CredentialModel[] models)
|
|
{
|
|
return models.Select(m => m.ToCipherLoginFido2CredentialData()).ToArray();
|
|
}
|
|
}
|