Polianin Nikita
cd6f25deba
All logic related to token manipulation has been transferred to the AuthService. Also added TOTP 2FA and rethought the logic of logging into the application
30 lines
777 B
C#
30 lines
777 B
C#
using Microsoft.AspNetCore.Http;
|
|
using System;
|
|
|
|
namespace Mirea.Api.Security.Common.Domain;
|
|
|
|
public class CookieOptionsParameters
|
|
{
|
|
public required string Domain { get; set; }
|
|
public required string Path { get; set; }
|
|
|
|
internal void SetCookie(HttpContext context, string name, string value, DateTimeOffset? expires = null)
|
|
{
|
|
var cookieOptions = new CookieOptions
|
|
{
|
|
Expires = expires,
|
|
Path = Path,
|
|
Domain = Domain,
|
|
HttpOnly = true,
|
|
#if !DEBUG
|
|
Secure = true
|
|
#endif
|
|
};
|
|
|
|
context.Response.Cookies.Append(name, value, cookieOptions);
|
|
}
|
|
|
|
internal void DropCookie(HttpContext context, string name) =>
|
|
SetCookie(context, name, "", DateTimeOffset.MinValue);
|
|
}
|