mirror of
https://git.teknik.io/Teknikode/Teknik.git
synced 2023-08-02 14:16:22 +02:00
Added port designation for redirect and fixed identity server cookie domains
This commit is contained in:
parent
06ffbf0220
commit
40a5dee36f
@ -6,6 +6,7 @@ namespace Teknik.Configuration
|
|||||||
{
|
{
|
||||||
public class IdentityServerConfig
|
public class IdentityServerConfig
|
||||||
{
|
{
|
||||||
|
public string Host { get; set; }
|
||||||
public string Authority { get; set; }
|
public string Authority { get; set; }
|
||||||
|
|
||||||
public string ClientId { get; set; }
|
public string ClientId { get; set; }
|
||||||
@ -19,6 +20,7 @@ namespace Teknik.Configuration
|
|||||||
|
|
||||||
public IdentityServerConfig()
|
public IdentityServerConfig()
|
||||||
{
|
{
|
||||||
|
Host = "localhost:5002";
|
||||||
Authority = "https://localhost:5002";
|
Authority = "https://localhost:5002";
|
||||||
ClientId = "mvc.client";
|
ClientId = "mvc.client";
|
||||||
ClientSecret = "mysecret";
|
ClientSecret = "mysecret";
|
||||||
|
@ -24,6 +24,7 @@ using Microsoft.AspNetCore.Authorization;
|
|||||||
using Teknik.IdentityServer.Models;
|
using Teknik.IdentityServer.Models;
|
||||||
using IdentityServer4.Services;
|
using IdentityServer4.Services;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
|
using Teknik.Utilities;
|
||||||
|
|
||||||
namespace Teknik.IdentityServer
|
namespace Teknik.IdentityServer
|
||||||
{
|
{
|
||||||
@ -54,8 +55,14 @@ namespace Teknik.IdentityServer
|
|||||||
// Resolve the services from the service provider
|
// Resolve the services from the service provider
|
||||||
var config = sp.GetService<Config>();
|
var config = sp.GetService<Config>();
|
||||||
|
|
||||||
|
if (config.DevEnvironment)
|
||||||
|
{
|
||||||
|
Environment.EnvironmentName = EnvironmentName.Development;
|
||||||
|
}
|
||||||
|
|
||||||
services.ConfigureApplicationCookie(options =>
|
services.ConfigureApplicationCookie(options =>
|
||||||
{
|
{
|
||||||
|
options.Cookie.Domain = CookieHelper.GenerateCookieDomain(config.UserConfig.IdentityServerConfig.Host, false, Environment.IsDevelopment());
|
||||||
options.Cookie.Name = "TeknikAuth";
|
options.Cookie.Name = "TeknikAuth";
|
||||||
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
|
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
|
||||||
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
||||||
@ -65,7 +72,12 @@ namespace Teknik.IdentityServer
|
|||||||
|
|
||||||
services.AddHttpsRedirection(options =>
|
services.AddHttpsRedirection(options =>
|
||||||
{
|
{
|
||||||
options.RedirectStatusCode = StatusCodes.Status301MovedPermanently;
|
options.RedirectStatusCode = (Environment.IsDevelopment()) ? StatusCodes.Status307TemporaryRedirect : StatusCodes.Status308PermanentRedirect;
|
||||||
|
#if DEBUG
|
||||||
|
options.HttpsPort = 5050;
|
||||||
|
#else
|
||||||
|
options.HttpsPort = 443;
|
||||||
|
#endif
|
||||||
});
|
});
|
||||||
|
|
||||||
// Sessions
|
// Sessions
|
||||||
@ -76,6 +88,7 @@ namespace Teknik.IdentityServer
|
|||||||
// Set the anti-forgery cookie name
|
// Set the anti-forgery cookie name
|
||||||
services.AddAntiforgery(options =>
|
services.AddAntiforgery(options =>
|
||||||
{
|
{
|
||||||
|
options.Cookie.Domain = CookieHelper.GenerateCookieDomain(config.UserConfig.IdentityServerConfig.Host, false, Environment.IsDevelopment());
|
||||||
options.Cookie.Name = "TeknikAuthAntiForgery";
|
options.Cookie.Name = "TeknikAuthAntiForgery";
|
||||||
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
|
options.Cookie.SecurePolicy = CookieSecurePolicy.Always;
|
||||||
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
||||||
@ -165,7 +178,7 @@ namespace Teknik.IdentityServer
|
|||||||
IdleTimeout = TimeSpan.FromMinutes(30),
|
IdleTimeout = TimeSpan.FromMinutes(30),
|
||||||
Cookie = new CookieBuilder()
|
Cookie = new CookieBuilder()
|
||||||
{
|
{
|
||||||
Domain = null,
|
Domain = CookieHelper.GenerateCookieDomain(config.UserConfig.IdentityServerConfig.Host, false, Environment.IsDevelopment()),
|
||||||
Name = "TeknikAuthSession",
|
Name = "TeknikAuthSession",
|
||||||
SecurePolicy = CookieSecurePolicy.Always,
|
SecurePolicy = CookieSecurePolicy.Always,
|
||||||
SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict
|
SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict
|
||||||
|
@ -82,6 +82,16 @@ namespace Teknik
|
|||||||
Environment.EnvironmentName = EnvironmentName.Development;
|
Environment.EnvironmentName = EnvironmentName.Development;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
services.AddHttpsRedirection(options =>
|
||||||
|
{
|
||||||
|
options.RedirectStatusCode = (Environment.IsDevelopment()) ? StatusCodes.Status307TemporaryRedirect : StatusCodes.Status308PermanentRedirect;
|
||||||
|
#if DEBUG
|
||||||
|
options.HttpsPort = 5050;
|
||||||
|
#else
|
||||||
|
options.HttpsPort = 443;
|
||||||
|
#endif
|
||||||
|
});
|
||||||
|
|
||||||
// Add Tracking Filter scopes
|
// Add Tracking Filter scopes
|
||||||
//services.AddScoped<TrackDownload>();
|
//services.AddScoped<TrackDownload>();
|
||||||
//services.AddScoped<TrackLink>();
|
//services.AddScoped<TrackLink>();
|
||||||
@ -102,6 +112,7 @@ namespace Teknik
|
|||||||
|
|
||||||
services.ConfigureApplicationCookie(options =>
|
services.ConfigureApplicationCookie(options =>
|
||||||
{
|
{
|
||||||
|
options.Cookie.Domain = CookieHelper.GenerateCookieDomain(config.Host, false, Environment.IsDevelopment());
|
||||||
options.Cookie.Name = "TeknikWeb";
|
options.Cookie.Name = "TeknikWeb";
|
||||||
options.Cookie.SecurePolicy = CookieSecurePolicy.SameAsRequest;
|
options.Cookie.SecurePolicy = CookieSecurePolicy.SameAsRequest;
|
||||||
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
options.Cookie.SameSite = Microsoft.AspNetCore.Http.SameSiteMode.Strict;
|
||||||
|
Loading…
Reference in New Issue
Block a user