コード例 #1
0
        /// <summary>校验当前用户是否授予指定权限</summary>
        /// <param name="permission">要验证的权限</param>
        /// <returns></returns>
        public Boolean IsGranted(PermissionEnum permission)
        {
            //当前请求所在菜单及其权限
            var p = GetCurrentMenu();

            if (p != null)
            {
                //只是菜单访问权限
                if (permission == PermissionEnum.Access)
                {
                    return(true);
                }
                else
                {
                    if (p.Buttons != null && p.Buttons.Count > 0)
                    {
                        String per = permission.ToString().ToLower();
                        foreach (Button b in p.Buttons)
                        {
                            //判断是否有授权按钮
                            if (!String.IsNullOrEmpty(b.Code) && b.Code.ToLower() == per)
                            {
                                return(true);
                            }
                        }
                    }
                }
            }
            return(false);
        }
コード例 #2
0
ファイル: HtmlAuthorizeHelper.cs プロジェクト: jasmina94/LMS
        public static IHtmlString Restrict(this HtmlHelper htmlHeper, UserSessionObject currentUser, PermissionEnum permission, IHtmlString content)
        {
            MvcHtmlString mvcHtmlString = null;

            if (currentUser != null && currentUser.Permissions.Contains(permission.ToString()))
            {
                mvcHtmlString = new MvcHtmlString(content.ToString());
            }

            return(mvcHtmlString);
        }
コード例 #3
0
        public static void SetForbid(PermissionEnum permission, PermissionPriorityEnum priority)
        {
            if (!_bIsInit)
            {
                Init();
            }

            if (priority > _dicPermissionInfo [permission])
            {
                Debug.LogFormat("[PermissionCenter.SetPermit] Set forbit: {0}", permission.ToString());
                _dicPermissionInfo [permission] = priority;
            }
        }
コード例 #4
0
 public BlogAuthorizeAttribute(PermissionEnum permission)
     : base()
 {
     Roles = permission.ToString();
 }
コード例 #5
0
ファイル: BlogService.cs プロジェクト: eouw0o83hf/Blog
        public void GrantUserPermission(int userId, PermissionEnum permission)
        {
            var dbUser = BlogDb.Users.FirstOrDefault(a => a.UserId == userId);
            if (dbUser == null)
            {
                return;
            }

            var dbPermission = BlogDb.Permissions.FirstOrDefault(a => a.Name == permission.ToString());
            if (!dbUser.UserPermissions.Any(a => a.PermissionId == dbPermission.PermissionId))
            {
                BlogDb.UserPermissions.InsertOnSubmit(new UserPermission
                {
                    PermissionId = dbPermission.PermissionId,
                    UserId = dbUser.UserId
                });

                BlogDb.SubmitChanges();
            }
        }