コード例 #1
0
        public void Permissions_Fail_NoPerms_Test()
        {
            var claims = Array.Empty <Claim>();
            var ctx    = ActionExecutingContextFactory(claims);
            var attrib = new PermissionsFilterAttribute(new[] { "v1:w:data", "v2:2:data" });

            attrib.OnActionExecuting(ctx);
            Assert.IsInstanceOfType(ctx.Result, typeof(UnauthorizedObjectResult));
        }
コード例 #2
0
        public void ScopedPermission_Fail_Test()
        {
            var claims = new[] {
                new Claim(BaseActionFilterAttribute.DefaultScopeClaimType, "openid profile email offline_access")
            };
            var ctx    = ActionExecutingContextFactory(claims);
            var attrib = new PermissionsFilterAttribute(new[] { "v1:w:data", "v2:2:data" }, allowScopes: true);

            attrib.OnActionExecuting(ctx);
            Assert.IsInstanceOfType(ctx.Result, typeof(UnauthorizedObjectResult));
        }
コード例 #3
0
        public void Scoped_Permissions_Pass_Many2Many_Test()
        {
            var claims = new[] {
                new Claim(BaseActionFilterAttribute.DefaultScopeClaimType, "openid profile email offline_access v1:w:data")
            };
            var ctx    = ActionExecutingContextFactory(claims);
            var attrib = new PermissionsFilterAttribute(new[] { "v1:w:data", "v2:2:data" });

            attrib.OnActionExecuting(ctx);
            Assert.IsNull(ctx.Result);
        }
コード例 #4
0
        public void Permissions_Pass_Single_Test()
        {
            var claims = new[] {
                new Claim(BaseActionFilterAttribute.DefaultPermissionClaimType, "v1:w:data")
            };
            var ctx    = ActionExecutingContextFactory(claims);
            var attrib = new PermissionsFilterAttribute(new[] { "v1:w:data" });

            attrib.OnActionExecuting(ctx);
            Assert.IsNull(ctx.Result);
        }
コード例 #5
0
        public void Permissions_Fail_Test()
        {
            var claims = new[] {
                new Claim(BaseActionFilterAttribute.DefaultPermissionClaimType, "v4:w:data"),
                new Claim(BaseActionFilterAttribute.DefaultPermissionClaimType, "v3:w:data")
            };
            var ctx    = ActionExecutingContextFactory(claims);
            var attrib = new PermissionsFilterAttribute(new[] { "v1:w:data", "v2:2:data" });

            attrib.OnActionExecuting(ctx);
            Assert.IsInstanceOfType(ctx.Result, typeof(UnauthorizedObjectResult));
        }