refactoring
This commit is contained in:
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"name": "YavscWeb",
|
"name": "Yavsc",
|
||||||
"version": "0.0.0",
|
"version": "0.0.0",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"gulp": "^3.9.0",
|
"gulp": "^3.9.0",
|
||||||
|
@ -42,7 +42,7 @@
|
|||||||
},
|
},
|
||||||
"webroot": "wwwroot",
|
"webroot": "wwwroot",
|
||||||
"tooling": {
|
"tooling": {
|
||||||
"defaultNamespace": "YavscWeb"
|
"defaultNamespace": "Yavsc"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"EntityFramework.Core": "7.0.0-rc1-*",
|
"EntityFramework.Core": "7.0.0-rc1-*",
|
||||||
@ -150,4 +150,4 @@
|
|||||||
"prepublish": "gulp min",
|
"prepublish": "gulp min",
|
||||||
"postpublish": "./postPublish.sh"
|
"postpublish": "./postPublish.sh"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -260,12 +260,12 @@
|
|||||||
"Zlib.Portable.Signed": "1.11.0"
|
"Zlib.Portable.Signed": "1.11.0"
|
||||||
},
|
},
|
||||||
"compile": {
|
"compile": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Google.Apis.Core/1.11.1": {
|
"Google.Apis.Core/1.11.1": {
|
||||||
@ -3235,12 +3235,12 @@
|
|||||||
"Zlib.Portable.Signed": "1.11.0"
|
"Zlib.Portable.Signed": "1.11.0"
|
||||||
},
|
},
|
||||||
"compile": {
|
"compile": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Google.Apis.Core/1.11.1": {
|
"Google.Apis.Core/1.11.1": {
|
||||||
@ -6210,12 +6210,12 @@
|
|||||||
"Zlib.Portable.Signed": "1.11.0"
|
"Zlib.Portable.Signed": "1.11.0"
|
||||||
},
|
},
|
||||||
"compile": {
|
"compile": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
},
|
},
|
||||||
"runtime": {
|
"runtime": {
|
||||||
"lib/net45/Google.Apis.dll": {},
|
"lib/net45/Google.Apis.PlatformServices.dll": {},
|
||||||
"lib/net45/Google.Apis.PlatformServices.dll": {}
|
"lib/net45/Google.Apis.dll": {}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"Google.Apis.Core/1.11.1": {
|
"Google.Apis.Core/1.11.1": {
|
||||||
|
@ -8,7 +8,7 @@ using Microsoft.Extensions.DependencyInjection;
|
|||||||
using Yavsc.Models;
|
using Yavsc.Models;
|
||||||
|
|
||||||
namespace Yavsc.Providers {
|
namespace Yavsc.Providers {
|
||||||
public sealed class AuthorizationProvider : OpenIdConnectServerProvider {
|
public sealed class OIAuthorizationProvider : OpenIdConnectServerProvider {
|
||||||
public override Task MatchEndpoint(MatchEndpointContext context) {
|
public override Task MatchEndpoint(MatchEndpointContext context) {
|
||||||
// Note: by default, OpenIdConnectServerHandler only handles authorization requests made to the authorization endpoint.
|
// Note: by default, OpenIdConnectServerHandler only handles authorization requests made to the authorization endpoint.
|
||||||
// This context handler uses a more relaxed policy that allows extracting authorization requests received at
|
// This context handler uses a more relaxed policy that allows extracting authorization requests received at
|
||||||
@ -117,4 +117,4 @@ namespace Yavsc.Providers {
|
|||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -5,6 +5,7 @@ using System.IdentityModel.Tokens;
|
|||||||
using System.IO;
|
using System.IO;
|
||||||
using System.Reflection;
|
using System.Reflection;
|
||||||
using System.Security.Claims;
|
using System.Security.Claims;
|
||||||
|
using System.Threading.Tasks;
|
||||||
using System.Web;
|
using System.Web;
|
||||||
using System.Web.Optimization;
|
using System.Web.Optimization;
|
||||||
using AspNet.Security.OpenIdConnect.Extensions;
|
using AspNet.Security.OpenIdConnect.Extensions;
|
||||||
@ -20,6 +21,7 @@ using Microsoft.AspNet.Diagnostics;
|
|||||||
using Microsoft.AspNet.FileProviders;
|
using Microsoft.AspNet.FileProviders;
|
||||||
using Microsoft.AspNet.Hosting;
|
using Microsoft.AspNet.Hosting;
|
||||||
using Microsoft.AspNet.Http;
|
using Microsoft.AspNet.Http;
|
||||||
|
using Microsoft.AspNet.Http.Authentication;
|
||||||
using Microsoft.AspNet.Identity;
|
using Microsoft.AspNet.Identity;
|
||||||
using Microsoft.AspNet.Identity.EntityFramework;
|
using Microsoft.AspNet.Identity.EntityFramework;
|
||||||
using Microsoft.AspNet.Localization;
|
using Microsoft.AspNet.Localization;
|
||||||
@ -174,8 +176,6 @@ namespace Yavsc
|
|||||||
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<GoogleAuthSettings>), typeof(OptionsManager<GoogleAuthSettings>)));
|
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<GoogleAuthSettings>), typeof(OptionsManager<GoogleAuthSettings>)));
|
||||||
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<CompanyInfoSettings>), typeof(OptionsManager<CompanyInfoSettings>)));
|
services.Add(ServiceDescriptor.Singleton(typeof(IOptions<CompanyInfoSettings>), typeof(OptionsManager<CompanyInfoSettings>)));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
services.AddTransient<Microsoft.Extensions.WebEncoders.UrlEncoder, UrlEncoder>();
|
services.AddTransient<Microsoft.Extensions.WebEncoders.UrlEncoder, UrlEncoder>();
|
||||||
services.AddDataProtection();
|
services.AddDataProtection();
|
||||||
services.Add(ServiceDescriptor.Singleton(typeof(IApplicationDiscriminator),
|
services.Add(ServiceDescriptor.Singleton(typeof(IApplicationDiscriminator),
|
||||||
@ -220,7 +220,15 @@ namespace Yavsc
|
|||||||
}
|
}
|
||||||
*/
|
*/
|
||||||
);
|
);
|
||||||
|
// Add memory cache services
|
||||||
|
services.AddCaching();
|
||||||
|
|
||||||
|
// Add session related services.
|
||||||
|
services.AddSession();
|
||||||
|
|
||||||
|
// Add the system clock service
|
||||||
|
services.AddSingleton<ISystemClock, SystemClock>();
|
||||||
|
|
||||||
services.AddAuthorization(options =>
|
services.AddAuthorization(options =>
|
||||||
{
|
{
|
||||||
options.AddPolicy("AdministratorOnly", policy => policy.RequireRole(Constants.AdminGroupName));
|
options.AddPolicy("AdministratorOnly", policy => policy.RequireRole(Constants.AdminGroupName));
|
||||||
@ -278,14 +286,7 @@ namespace Yavsc
|
|||||||
options.ResourcesPath = "Resources";
|
options.ResourcesPath = "Resources";
|
||||||
});
|
});
|
||||||
|
|
||||||
// Add memory cache services
|
|
||||||
services.AddCaching();
|
|
||||||
|
|
||||||
// Add session related services.
|
|
||||||
services.AddSession();
|
|
||||||
|
|
||||||
// Add the system clock service
|
|
||||||
services.AddSingleton<ISystemClock, SystemClock>();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
|
// This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
|
||||||
@ -488,8 +489,24 @@ namespace Yavsc
|
|||||||
app.UseStaticFiles().UseWebSockets();
|
app.UseStaticFiles().UseWebSockets();
|
||||||
|
|
||||||
app.UseOpenIdConnectServer(options => {
|
app.UseOpenIdConnectServer(options => {
|
||||||
options.Provider = new AuthorizationProvider();
|
options.Provider = new OIAuthorizationProvider()
|
||||||
|
|
||||||
|
/* {
|
||||||
|
OnValidateAuthorizationRequest = context => {
|
||||||
|
// Note: you MUST NOT validate the request if client_id is invalid or if redirect_uri
|
||||||
|
// doesn't correspond to a trusted URL associated with the client application.
|
||||||
|
// You SHOULD also strongly consider validating the type of the client application
|
||||||
|
// (public or confidential) to prevent code flow -> implicit flow downgrade attacks.
|
||||||
|
if (string.Equals(context.ClientId, "client_id", StringComparison.Ordinal)) {
|
||||||
|
context.Validated();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Note: if Validate() is not explicitly called,
|
||||||
|
// the request is automatically rejected.
|
||||||
|
return Task.FromResult(0);
|
||||||
|
} */;
|
||||||
|
|
||||||
|
|
||||||
// Register the certificate used to sign the JWT tokens.
|
// Register the certificate used to sign the JWT tokens.
|
||||||
/* options.SigningCredentials.AddCertificate(
|
/* options.SigningCredentials.AddCertificate(
|
||||||
assembly: typeof(Startup).GetTypeInfo().Assembly,
|
assembly: typeof(Startup).GetTypeInfo().Assembly,
|
||||||
@ -501,25 +518,26 @@ namespace Yavsc
|
|||||||
// information concerning ApplicationCanDisplayErrors.
|
// information concerning ApplicationCanDisplayErrors.
|
||||||
options.ApplicationCanDisplayErrors = true;
|
options.ApplicationCanDisplayErrors = true;
|
||||||
options.AllowInsecureHttp = true;
|
options.AllowInsecureHttp = true;
|
||||||
/* options.AutomaticChallenge = true;
|
options.ClaimsIssuer = "http://dev.pschneider.fr";
|
||||||
|
options.Description.DisplayName = "DEV OIDC server";
|
||||||
options.AuthorizationEndpointPath = new PathString("/connect/authorize");
|
options.AuthorizationEndpointPath = new PathString("/connect/authorize");
|
||||||
options.TokenEndpointPath = new PathString("/connect/token");
|
options.TokenEndpointPath = new PathString("/connect/token");
|
||||||
options.UseSlidingExpiration = true;
|
options.UseSlidingExpiration = true;
|
||||||
options.AuthenticationScheme = "oidc";
|
options.AuthenticationScheme = "oidc";
|
||||||
options.LogoutEndpointPath = new PathString("/connect/logout");*/
|
options.LogoutEndpointPath = new PathString("/connect/logout");
|
||||||
/* options.ValidationEndpointPath = new PathString("/connect/introspect"); */
|
/* options.ValidationEndpointPath = new PathString("/connect/introspect"); */
|
||||||
|
|
||||||
});
|
});
|
||||||
|
|
||||||
app.UseOpenIdConnectAuthentication(options => {
|
/* app.UseOpenIdConnectAuthentication(options => {
|
||||||
options.AuthenticationScheme = OpenIdConnectDefaults.AuthenticationScheme;
|
options.AuthenticationScheme = OpenIdConnectDefaults.AuthenticationScheme;
|
||||||
options.RequireHttpsMetadata = false;
|
options.RequireHttpsMetadata = false;
|
||||||
|
|
||||||
// Note: these settings must match the application details
|
// Note: these settings must match the application details
|
||||||
// inserted in the database at the server level.
|
// inserted in the database at the server level.
|
||||||
options.ClientId = "WebApiClient";
|
options.ClientId = "016c5ae4-f4cd-40e3-b250-13701c871ecd";
|
||||||
options.ClientSecret = "secWebApiClientret_secret";
|
options.ClientSecret = "blahblah";
|
||||||
options.PostLogoutRedirectUri = "http://dev.pschneider.fr/Manage";
|
options.PostLogoutRedirectUri = "/MobileLogout";
|
||||||
|
|
||||||
// Use the authorization code flow.
|
// Use the authorization code flow.
|
||||||
options.ResponseType = OpenIdConnectResponseTypes.Code;
|
options.ResponseType = OpenIdConnectResponseTypes.Code;
|
||||||
@ -533,7 +551,7 @@ namespace Yavsc
|
|||||||
// access token should be issued for (values must be space-delimited).
|
// access token should be issued for (values must be space-delimited).
|
||||||
options.Resource = "http://dev.pschneider.fr/";
|
options.Resource = "http://dev.pschneider.fr/";
|
||||||
options.Scope.Add("api-resource-controller");
|
options.Scope.Add("api-resource-controller");
|
||||||
});
|
});*/
|
||||||
|
|
||||||
app.UseRequestLocalization(localizationOptions.Value, (RequestCulture)new RequestCulture((string)"fr"));
|
app.UseRequestLocalization(localizationOptions.Value, (RequestCulture)new RequestCulture((string)"fr"));
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user