initial
This commit is contained in:
47
libs/UserInfo.cs
Normal file
47
libs/UserInfo.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using C4IT.Security;
|
||||
using C4IT.API.Contracts;
|
||||
|
||||
|
||||
namespace C4IT_CustomerPanel.libs
|
||||
{
|
||||
public class UserInfo
|
||||
{
|
||||
public static UserInfo UserInfoInstance = null;
|
||||
|
||||
public string Id { get; set; }
|
||||
public string Email { get; set; }
|
||||
public string EncryptedApiToken { get; set; }
|
||||
public DateTime LoginDate { get; set; }
|
||||
public DateTime ExpirationDate { get; set; }
|
||||
|
||||
public UserInfo()
|
||||
{
|
||||
UserInfoInstance = this;
|
||||
}
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
// Nur die ersten X Zeichen des Tokens anzeigen
|
||||
const int tokenVisibleLength = 10;
|
||||
string maskedToken;
|
||||
|
||||
if (string.IsNullOrEmpty(EncryptedApiToken))
|
||||
{
|
||||
maskedToken = "(null or empty)";
|
||||
}
|
||||
else
|
||||
{
|
||||
var displayLength = Math.Min(tokenVisibleLength, EncryptedApiToken.Length);
|
||||
maskedToken = EncryptedApiToken.Substring(0, displayLength)
|
||||
+ new string('*', Math.Max(0, EncryptedApiToken.Length - displayLength));
|
||||
}
|
||||
|
||||
return $"UserInfo => Id: {Id}, " +
|
||||
$"Email: {Email}, " +
|
||||
$"Token: {maskedToken}, " +
|
||||
$"LoginDate: {LoginDate:u}, " +
|
||||
$"ExpirationDate: {ExpirationDate:u}";
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user