- add: Auth service

This commit is contained in:
2024-12-22 21:38:19 +03:00
parent 4d64c995f1
commit fd347a4fc8
30 changed files with 894 additions and 211 deletions

View File

@@ -0,0 +1,10 @@
using System;
namespace Nebula.Launcher.Models.Auth;
public sealed record AuthenticateRequest(string? Username, Guid? UserId, string Password, string? TfaCode = null)
{
public AuthenticateRequest(string username, string password) : this(username, null, password)
{
}
}

View File

@@ -0,0 +1,5 @@
using System;
namespace Nebula.Launcher.Models.Auth;
public sealed record AuthenticateResponse(string Token, string Username, Guid UserId, DateTimeOffset ExpireTime);

View File

@@ -0,0 +1,15 @@
using System;
namespace Nebula.Launcher.Models.Auth;
public class LoginInfo
{
public Guid UserId { get; set; }
public string Username { get; set; } = default!;
public LoginToken Token { get; set; }
public override string ToString()
{
return $"{Username}/{UserId}";
}
}

View File

@@ -0,0 +1,15 @@
using System;
namespace Nebula.Launcher.Models.Auth;
public readonly struct LoginToken
{
public readonly string Token;
public readonly DateTimeOffset ExpireTime;
public LoginToken(string token, DateTimeOffset expireTime)
{
Token = token;
ExpireTime = expireTime;
}
}