mirror of
https://github.com/LBPUnion/ProjectLighthouse.git
synced 2025-05-14 13:52:28 +00:00
* Initial work for verifying login ticket signatures * Add candidate psn public key * Add candidate psn public key and fix nuget packages * Finalize npticket changes * Add support for ticket version 3.0 * Rework login system to link platform accounts instead of using ip addresses * Make linked accounts green instead of blue * Fix api building * Fix unit tests * Actually fix unit tests * Set unit test user's linked platform * Why was this the wrong default value? * Fix username change code * Make TicketHash hash the entire ticket instead of just the serial * Send password setup email when user sets their email for the first time * Changes from self review
31 lines
No EOL
854 B
C#
31 lines
No EOL
854 B
C#
#nullable enable
|
|
using System.Net;
|
|
using LBPUnion.ProjectLighthouse.PlayerData;
|
|
using LBPUnion.ProjectLighthouse.Servers.Website.Pages.Layouts;
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
namespace LBPUnion.ProjectLighthouse.Servers.Website.Pages.ExternalAuth;
|
|
|
|
public class AuthenticationPage : BaseLayout
|
|
{
|
|
|
|
public List<PlatformLinkAttempt> LinkAttempts = new();
|
|
|
|
public IPAddress? IpAddress;
|
|
public AuthenticationPage(Database database) : base(database)
|
|
{}
|
|
|
|
public IActionResult OnGet()
|
|
{
|
|
if (this.User == null) return this.StatusCode(403, "");
|
|
|
|
this.IpAddress = this.HttpContext.Connection.RemoteIpAddress;
|
|
|
|
this.LinkAttempts = this.Database.PlatformLinkAttempts
|
|
.Where(l => l.UserId == this.User.UserId)
|
|
.OrderByDescending(a => a.Timestamp)
|
|
.ToList();
|
|
|
|
return this.Page();
|
|
}
|
|
} |