From 65e1c3b02bfa6bab5eb0e49e5d0be7e1d09dea8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Halil=20=C4=B0brahim=20Kalkan?= Date: Mon, 5 Mar 2018 11:38:57 +0300 Subject: [PATCH] Fixed claims mapping. --- .../MicroservicesDemoWebModule.cs | 23 +++++++++++-------- .../MicroserviceDemo.Web/Pages/Index.cshtml | 2 ++ 2 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/MicroserviceDemo/MicroserviceDemo.Web/MicroservicesDemoWebModule.cs b/src/MicroserviceDemo/MicroserviceDemo.Web/MicroservicesDemoWebModule.cs index 8af1201e53..80aa06434e 100644 --- a/src/MicroserviceDemo/MicroserviceDemo.Web/MicroservicesDemoWebModule.cs +++ b/src/MicroserviceDemo/MicroserviceDemo.Web/MicroservicesDemoWebModule.cs @@ -79,7 +79,7 @@ namespace MicroserviceDemo.Web }); }); - JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear(); + //JwtSecurityTokenHandler.DefaultInboundClaimTypeMap.Clear(); services.AddAuthentication(options => { @@ -100,23 +100,28 @@ namespace MicroserviceDemo.Web options.SaveTokens = true; options.GetClaimsFromUserInfoEndpoint = true; - options.Scope.Add("openid"); - options.Scope.Add("profile"); + //options.Scope.Add("openid"); + //options.Scope.Add("profile"); options.Scope.Add("role"); options.Scope.Add("email"); options.Scope.Add("phone"); options.Scope.Add("multi-tenancy-api"); //options.Scope.Add("offline_access"); - options.ClaimActions.MapUniqueJsonKey("email_verified", "email_verified"); + options.ClaimActions.MapJsonKey(AbpClaimTypes.Role, "role"); + options.ClaimActions.MapJsonKey(AbpClaimTypes.Email, "email"); + options.ClaimActions.MapJsonKey(AbpClaimTypes.UserId, "sub"); + options.ClaimActions.MapJsonKey(AbpClaimTypes.UserName, "name"); + options.ClaimActions.MapUniqueJsonKey("email_verified", "email_verified"); //TODO: Can we add claims types to AbpClaimTypes options.ClaimActions.MapUniqueJsonKey("phone_number", "phone_number"); options.ClaimActions.MapUniqueJsonKey("phone_number_verified", "phone_number_verified"); - options.ClaimActions.MapUniqueJsonKey("role", "role"); - AbpClaimTypes.UserName = "name"; - AbpClaimTypes.Email = "email"; - AbpClaimTypes.Role = "role"; - AbpClaimTypes.UserId = "sub"; + //options.TokenValidationParameters.RoleClaimType = AbpClaimTypes. + + //AbpClaimTypes.UserName = "name"; + //AbpClaimTypes.Email = "email"; + //AbpClaimTypes.Role = "role"; + //AbpClaimTypes.UserId = "sub"; options.SecurityTokenValidator = new MyJwtSecurityTokenHandler(); }); diff --git a/src/MicroserviceDemo/MicroserviceDemo.Web/Pages/Index.cshtml b/src/MicroserviceDemo/MicroserviceDemo.Web/Pages/Index.cshtml index 732d39e88e..7cc98887ca 100644 --- a/src/MicroserviceDemo/MicroserviceDemo.Web/Pages/Index.cshtml +++ b/src/MicroserviceDemo/MicroserviceDemo.Web/Pages/Index.cshtml @@ -26,6 +26,8 @@ accessToken = @accessToken
refreshToken = @refreshToken
+ + isInRole(admin) = @User.IsInRole("admin")