Add MedMind recovery and Steam authentication

This commit is contained in:
hz
2026-07-16 00:24:07 -05:00
parent 0ca7a31daa
commit bf6f86b73c
14 changed files with 556 additions and 8 deletions
+13
View File
@@ -0,0 +1,13 @@
namespace GameAuthApi.Models;
public class PasswordResetRequest
{
public string Login { get; set; }
}
public class PasswordResetConfirmRequest
{
public string Login { get; set; }
public string Code { get; set; }
public string NewPassword { get; set; }
}
+10
View File
@@ -0,0 +1,10 @@
namespace GameAuthApi.Models;
public class SteamCompleteRequest
{
public string TransactionId { get; set; }
public string Action { get; set; }
public string Username { get; set; }
public string Email { get; set; }
public string Password { get; set; }
}
+16
View File
@@ -0,0 +1,16 @@
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using System;
namespace GameAuthApi.Models;
public class ExternalIdentityLink
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
public string Id { get; set; }
public string Provider { get; set; }
public string Subject { get; set; }
public string UserId { get; set; }
public DateTime CreatedUtc { get; set; }
}
+18
View File
@@ -0,0 +1,18 @@
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;
using System;
namespace GameAuthApi.Models;
public class PasswordResetChallenge
{
[BsonId]
[BsonRepresentation(BsonType.ObjectId)]
public string Id { get; set; }
public string UserId { get; set; }
public string CodeHash { get; set; }
public int FailedAttempts { get; set; }
public DateTime ExpiresUtc { get; set; }
public DateTime CreatedUtc { get; set; }
public bool Used { get; set; }
}
+17
View File
@@ -0,0 +1,17 @@
using System;
namespace GameAuthApi.Models;
public class SteamAuthTransaction
{
public string Id { get; set; }
public string Status { get; set; } = "pending";
public string SteamId { get; set; }
public string UserId { get; set; }
public string AccessToken { get; set; }
public string RefreshToken { get; set; }
public string Username { get; set; }
public string Role { get; set; }
public DateTime ExpiresUtc { get; set; }
public DateTime CreatedUtc { get; set; }
}
+3 -1
View File
@@ -16,4 +16,6 @@ public class User
public string RefreshToken { get; set; }
public DateTime RefreshTokenExpiry { get; set; }
public string Email { get; set; }
}
public string NormalizedUsername { get; set; }
public string NormalizedEmail { get; set; }
}