public void CuandoUserTieneClaimsPeroConClaimResourceAccessVacioResultadoEsSuccess() { // var role = "admin"; var audience = "TestBackend"; var hasRole = new HasRoleHandler(audience); var resourceAccess = new { TestBackend = new { roles = new string[] { role } } }; var identity = new ClaimsIdentity(); identity.AddClaim(new Claim(ClaimTypes.Name, "Michael Emir")); identity.AddClaim(new Claim(ClaimTypes.Country, "El Salvador")); identity.AddClaim(new Claim("resource_access", JsonConvert.SerializeObject(resourceAccess))); var userClaims = new ClaimsPrincipal(identity); //Usuario var roleRequirement = new HasRoleRequirement(role); var requirements = new IAuthorizationRequirement[] { roleRequirement }; var context = new AuthorizationHandlerContext(requirements, userClaims, null); //Act hasRole.ValidateRoleRequirement(context, roleRequirement); //Assert Assert.IsTrue(context.HasSucceeded); Assert.IsFalse(context.HasFailed); }
public void CuandoUserNoTieneClaimsResultadoEsFail() { // var role = "admin"; var audience = "TestBackend"; var hasRole = new HasRoleHandler(audience); var userClaims = new ClaimsPrincipal(); //Usuario sin Claims var roleRequirement = new HasRoleRequirement(role); var requirements = new IAuthorizationRequirement[] { roleRequirement }; var context = new AuthorizationHandlerContext(requirements, userClaims, null); //Act hasRole.ValidateRoleRequirement(context, roleRequirement); //Assert Assert.IsFalse(context.HasSucceeded); Assert.IsTrue(context.HasFailed); }