diff --git a/src/Microsoft.AspNet.Security/AuthorizationServiceExtensions.cs b/src/Microsoft.AspNet.Security/AuthorizationServiceExtensions.cs index b26c636e75..17ec58196d 100644 --- a/src/Microsoft.AspNet.Security/AuthorizationServiceExtensions.cs +++ b/src/Microsoft.AspNet.Security/AuthorizationServiceExtensions.cs @@ -17,7 +17,7 @@ namespace Microsoft.AspNet.Security /// The claim to check against a specific user. /// The user to check claims against. /// true when the user fulfills one of the claims, false otherwise. - public static Task AuthorizeAsync(this IAuthorizationService service, Claim claim, ClaimsPrincipal user) + public static Task AuthorizeAsync([NotNull] this IAuthorizationService service, Claim claim, ClaimsPrincipal user) { return service.AuthorizeAsync(new Claim[] { claim }, user); } @@ -28,7 +28,7 @@ namespace Microsoft.AspNet.Security /// The claim to check against a specific user. /// The user to check claims against. /// true when the user fulfills one of the claims, false otherwise. - public static bool Authorize(this IAuthorizationService service, Claim claim, ClaimsPrincipal user) + public static bool Authorize([NotNull] this IAuthorizationService service, Claim claim, ClaimsPrincipal user) { return service.Authorize(new Claim[] { claim }, user); } @@ -40,7 +40,7 @@ namespace Microsoft.AspNet.Security /// The user to check claims against. /// The resource the claims should be check with. /// true when the user fulfills one of the claims, false otherwise. - public static Task AuthorizeAsync(this IAuthorizationService service, Claim claim, ClaimsPrincipal user, object resource) + public static Task AuthorizeAsync([NotNull] this IAuthorizationService service, Claim claim, ClaimsPrincipal user, object resource) { return service.AuthorizeAsync(new Claim[] { claim }, user, resource); } @@ -52,9 +52,31 @@ namespace Microsoft.AspNet.Security /// The user to check claims against. /// The resource the claims should be check with. /// true when the user fulfills one of the claims, false otherwise. - public static bool Authorize(this IAuthorizationService service, Claim claim, ClaimsPrincipal user, object resource) + public static bool Authorize([NotNull] this IAuthorizationService service, Claim claim, ClaimsPrincipal user, object resource) { return service.Authorize(new Claim[] { claim }, user, resource); } + + /// + /// Checks if a user has specific claims. + /// + /// The claims to check against a specific user. + /// The user to check claims against. + /// true when the user fulfills one of the claims, false otherwise. + public static Task AuthorizeAsync([NotNull] this IAuthorizationService service, IEnumerable claims, ClaimsPrincipal user) + { + return service.AuthorizeAsync(claims, user, null); + } + + /// + /// Checks if a user has specific claims. + /// + /// The claims to check against a specific user. + /// The user to check claims against. + /// true when the user fulfills one of the claims, false otherwise. + public static bool Authorize([NotNull] this IAuthorizationService service, IEnumerable claims, ClaimsPrincipal user) + { + return service.Authorize(claims, user, null); + } } } \ No newline at end of file diff --git a/src/Microsoft.AspNet.Security/DefaultAuthorizationService.cs b/src/Microsoft.AspNet.Security/DefaultAuthorizationService.cs index 578671e95b..aaa1dbc103 100644 --- a/src/Microsoft.AspNet.Security/DefaultAuthorizationService.cs +++ b/src/Microsoft.AspNet.Security/DefaultAuthorizationService.cs @@ -26,16 +26,6 @@ namespace Microsoft.AspNet.Security } } - public async Task AuthorizeAsync(IEnumerable claims, ClaimsPrincipal user) - { - return await AuthorizeAsync(claims, user, null); - } - - public bool Authorize(IEnumerable claims, ClaimsPrincipal user) - { - return AuthorizeAsync(claims, user, null).Result; - } - public async Task AuthorizeAsync(IEnumerable claims, ClaimsPrincipal user, object resource) { var context = new AuthorizationPolicyContext(claims, user, resource); diff --git a/src/Microsoft.AspNet.Security/IAuthorizationService.cs b/src/Microsoft.AspNet.Security/IAuthorizationService.cs index 2063ae6468..9fcef75a2f 100644 --- a/src/Microsoft.AspNet.Security/IAuthorizationService.cs +++ b/src/Microsoft.AspNet.Security/IAuthorizationService.cs @@ -12,22 +12,6 @@ namespace Microsoft.AspNet.Security /// public interface IAuthorizationService { - /// - /// Checks if a user has specific claims. - /// - /// The claims to check against a specific user. - /// The user to check claims against. - /// true when the user fulfills one of the claims, false otherwise. - Task AuthorizeAsync(IEnumerable claims, ClaimsPrincipal user); - - /// - /// Checks if a user has specific claims. - /// - /// The claims to check against a specific user. - /// The user to check claims against. - /// true when the user fulfills one of the claims, false otherwise. - bool Authorize(IEnumerable claims, ClaimsPrincipal user); - /// /// Checks if a user has specific claims for a specific context obj. /// diff --git a/test/Microsoft.AspNet.Security.Test/DefaultAuthorizationServiceTests.cs b/test/Microsoft.AspNet.Security.Test/DefaultAuthorizationServiceTests.cs index 7fbacd02a3..fd3a668a25 100644 --- a/test/Microsoft.AspNet.Security.Test/DefaultAuthorizationServiceTests.cs +++ b/test/Microsoft.AspNet.Security.Test/DefaultAuthorizationServiceTests.cs @@ -165,7 +165,7 @@ namespace Microsoft.AspNet.Security.Test var authorizationService = new DefaultAuthorizationService(policies); // Act - var allowed = authorizationService.Authorize(null, null); + var allowed = authorizationService.Authorize(Enumerable.Empty(), null); // Assert Assert.Equal("-12030", result); @@ -200,7 +200,7 @@ namespace Microsoft.AspNet.Security.Test var authorizationService = new DefaultAuthorizationService(policies); // Act - var allowed = authorizationService.Authorize(null, null); + var allowed = authorizationService.Authorize(Enumerable.Empty(), null); // Assert Assert.Equal("Applying-1Applying20Applying30Apply-1Apply20Apply30Applied-1Applied20Applied30", result); @@ -221,7 +221,7 @@ namespace Microsoft.AspNet.Security.Test var authorizationService = new DefaultAuthorizationService(policies); // Act - var allowed = authorizationService.Authorize(null, null); + var allowed = authorizationService.Authorize(Enumerable.Empty(), null); // Assert Assert.NotNull(claims); @@ -242,7 +242,7 @@ namespace Microsoft.AspNet.Security.Test // Act // Assert - Exception ex = Assert.Throws(() => authorizationService.Authorize(null, null)); + Exception ex = Assert.Throws(() => authorizationService.Authorize(Enumerable.Empty(), null)); } [Fact]