add more params
This commit is contained in:
parent
3aa88e8483
commit
6853e013ea
2 changed files with 7 additions and 5 deletions
|
@ -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; }
|
||||||
}
|
}
|
|
@ -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,
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue