Exemple #1
0
        protected override bool IsAuthorized(HttpActionContext context)
        {
            if (context == null)
            {
                throw new ArgumentException("HttpActionContext does not exist!");
            }
            Identity = GetWebApiIdentity(context);
            if (Identity == null)
            {
                return(false);
            }

            return(Identity.Permissions.Contains(context.Request.Method == HttpMethod.Get ?
                                                 ReadPermission :
                                                 WritePermission));
        }
Exemple #2
0
        static WebApiIdentityRepository()
        {
            FakeDataStore             = new Dictionary <string, WebApiIdentity>();
            FakeDataStore["readonly"] = new WebApiIdentity
            {
                Token       = "readonly",
                AppIds      = new HashSet <int>(new[] { 1, 2, 3 }),
                Permissions = new HashSet <Permission>(new[] { Permission.UsersRead, Permission.AppsRead })
            };

            FakeDataStore["writeonly"] = new WebApiIdentity
            {
                Token       = "writeonly",
                AppIds      = new HashSet <int>(new[] { 1, 2, 3 }),
                Permissions = new HashSet <Permission>(new[] { Permission.UsersWrite, Permission.AppsWrite })
            };

            FakeDataStore["admin"] = new WebApiIdentity
            {
                Token       = "admin",
                AppIds      = new HashSet <int>(new[] { 1, 2, 3 }),
                Permissions = new HashSet <Permission>(new[] { Permission.UsersWrite, Permission.UsersRead, Permission.AppsRead, Permission.AppsWrite })
            };
        }