add more params

This commit is contained in:
john 2025-05-20 11:21:36 +02:00
parent 3aa88e8483
commit 6853e013ea
2 changed files with 7 additions and 5 deletions

View file

@ -3,4 +3,5 @@ namespace Femto.Api.Auth;
public class CookieSettings public class CookieSettings
{ {
public bool Secure { get; set; } public bool Secure { get; set; }
public string? Domain { get; set; }
} }

View file

@ -8,15 +8,12 @@ namespace Femto.Api.Sessions;
internal static class HttpContextSessionExtensions internal static class HttpContextSessionExtensions
{ {
public static void SetSession( public static void SetSession(this HttpContext httpContext, Session session, UserInfo user)
this HttpContext httpContext,
Session session,
UserInfo user
)
{ {
var cookieSettings = httpContext.RequestServices.GetService<IOptions<CookieSettings>>(); var cookieSettings = httpContext.RequestServices.GetService<IOptions<CookieSettings>>();
var secure = cookieSettings?.Value.Secure ?? true; var secure = cookieSettings?.Value.Secure ?? true;
var sameSite = secure ? SameSiteMode.None : SameSiteMode.Unspecified; var sameSite = secure ? SameSiteMode.None : SameSiteMode.Unspecified;
var domain = cookieSettings?.Value.Domain;
var expires = session.Expires; var expires = session.Expires;
httpContext.Response.Cookies.Append( httpContext.Response.Cookies.Append(
@ -24,6 +21,8 @@ internal static class HttpContextSessionExtensions
session.SessionId, session.SessionId,
new CookieOptions new CookieOptions
{ {
IsEssential = true,
Domain = domain,
HttpOnly = true, HttpOnly = true,
Secure = secure, Secure = secure,
SameSite = sameSite, SameSite = sameSite,
@ -43,6 +42,8 @@ internal static class HttpContextSessionExtensions
), ),
new CookieOptions new CookieOptions
{ {
Domain = domain,
IsEssential = true,
Secure = secure, Secure = secure,
SameSite = sameSite, SameSite = sameSite,
Expires = session.Expires, Expires = session.Expires,