1. 程式人生 > >asp.net core mvc許可權控制:在檢視中控制操作許可權

asp.net core mvc許可權控制:在檢視中控制操作許可權

public override void Process(TagHelperContext context, TagHelperOutput output)
        {
            if (string.IsNullOrEmpty(Claim))
            {
                return;
            }


            string[] claimData = Claim.Split(new char[] { '-' }, StringSplitOptions.RemoveEmptyEntries);


            if (claimData.Length == 1)
            {
                if (!ViewContext.HttpContext.User.HasClaim(m => m.Type == claimData[0]))
                {
                    //無許可權
                    output.SuppressOutput();
                }
            }
            else
            {
                if (!ViewContext.HttpContext.User.HasClaim(m => m.Type == claimData[0] && m.Value == claimData[1]))
                {
                    //無許可權
                    output.SuppressOutput();
                }
            }