控制视图页面的访问权限

ErpNext--创建类型文档 1、启用开发者模式 创建DocTypes需要在bench上开启开发者模式。Go to your terminal and quit the bench server if it's already running then from the directory, run the following command: 创建 DocType 设置页面访问权限 阅读详情
问题:

控制视图页面的访问权限,设置只有指定组的用户可以访问。

解决方案:

写一个webpart,添加到需要控制权限的页面,如何当前用户不属于指定的组,则不允许用户访问当前页面。

代码:
// ----------------------------------------------------------------
// CodeArt
//
// 文件描述:
//
// 创 建 人: jianyi
// 创建日期: 2008-7-11
//
// 修订记录: 
//

// ----------------------------------------------------------------
using  System;
using  System.Collections.Generic;
using  System.Collections;
using  System.ComponentModel;
using  System.Text;
using  System.Web;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;

using  Microsoft.SharePoint;
using  System.Collections.Specialized;
using  Microsoft.SharePoint.Utilities; 

namespace  ShareOffice.WebParts
{

    
public class RightControlPart : WebPart
    
{
        
private string _Groups = "";
        [WebBrowsable]
        [WebDescription(
"有权访问的组,用;间隔")]
        [Personalizable(PersonalizationScope.Shared)]
        
public string Groups
        
{
            
get { return _Groups; }
            
set { _Groups = value; }
        }


        
protected override void OnLoad(EventArgs e)
        
{
            
base.OnLoad(e);

            
this.Title = "";

            
base.ChromeType = PartChromeType.None;

            SPUser user 
= SPContext.Current.Web.CurrentUser;

            
//管理员可以访问
            if (user.IsSiteAdmin && String.IsNullOrEmpty(this.Groups))
                
return;

            
//检测用户是否属于配置的组
            string[] arr = this._Groups.Split(';');

            StringCollection userGroups 
= new StringCollection();
            
foreach (SPGroup g in user.Groups)
            
{
                userGroups.Add(g.Name.ToLower());
            }


            
foreach( string g in arr )
            
{
                
if (userGroups.Contains(g.ToLower()))
                    
return;
            }


            SPUtility.TransferToErrorPage(
"您没有权限访问此视图.");
        }

    }

}


这种方法的一个适用场景:
一个列表做两个视图:
视图1(默认视图): 采用某个用户字段=[本人做过滤],普通用户可以查看到跟自己有关的数据。
视图2:显示所有记录。在视图2页面上放置这个权限控制webpart,设置只有某个组可以访问。
从气象预报到物流规划:多尺度地理加权回归(MGWR)在ArcGIS Pro中的实战应用 本文深入探讨了多尺度地理加权回归(MGWR)在ArcGIS Pro中的实战应用。通过对比传统GWR模型,MGWR的核心优势在于能识别不同解释变量的独特空间作用尺度,有效解决空间异质性问题。文章结合气象预报误差修正与物流网点选址两个案例,详细讲解了从数据准备、参数设置、带宽优化到结果解读的全流程,为地理数据分析师处理复杂空间数据提供了强大工具。 阅读详情

相关推荐

群晖设置公网ipv6方式域名解析访问

群晖、IPV6、域名解析

爬山虎的博客 2万+

视图和用户权限

如果建立一个视图(基于多个基表),将相关的表和字段组合在一起,就可以避免使用JOIN查询数据。emp表的列信息很多,有些信息是个人重要信息(比如:sal、comm、mgr、hiredate),如果我们希望某个用户只能查询emp表的empno、enamel、job和deptno信息,有什么办法呢?不同的数据库用户,登录到DBMS后,根据相应的权限,可以操作的数据库和数据对象(表,视图,触发器)都不一样。视图的数据变化会影响到基表,基表的数据变化也会影响到视图 [insert,delete,update]

weixin_39158966的博客 338

【实训01】基于视图的访问控制

第1关:基于视图的简单查询;第2关:可见列控制;第3关:加密视图与更新视图

一只鼠标的博客 6524

STM32F103C8T6+HX711实战:从零打造智能体重秤(附OLED显示与语音播报)

本文详细介绍了基于STM32F103C8T6微控制器和HX711称重模块,从零构建智能体重秤的完整实战教程。内容涵盖硬件选型、系统架构、驱动编写、数据滤波校准算法,并实现了OLED显示与语音播报功能。该项目是嵌入式学习的综合性实践,尤其适合作为毕业设计课题,帮助开发者掌握传感器应用、数据处理及人机交互等核心技能。

weixin_28285943的博客 517

CentOS 7环境下GLPI与OCS Inventory资产管理系统集成部署指南

本文详细介绍了在CentOS 7环境下,如何将GLPI与OCS Inventory两大开源工具进行集成部署,构建自动化资产管理系统。指南涵盖环境准备、核心服务安装、Web界面初始化、OCS插件配置及资产同步实战,帮助运维人员实现IT资产的自动发现、统一管理与可视化,大幅提升资产管理效率。

weixin_29274337的博客 326

说下怎样创建一个视图,视图的好处,视图可以控制权限吗?思维导图 代码示例(java 架构)

创建视图有助于简化查询逻辑、增强安全性和提供更好的数据抽象。视图的好处包括但不限于简化查询、提高安全性、保持数据的一致性以及联合不同表的数据。通过视图控制权限可以让管理员更加灵活地管理用户对特定数据的访问,确保只有授权人员才能查看敏感信息。如果你有更具体的需求或者需要进一步的帮助,请告诉我!

qq_33240556的博客 420

5nm制程的CV5芯片实测:用它给无人机做8K拍摄和实时避障,功耗和性能到底怎么样?

本文深度评测了5nm制程的CV5芯片在无人机8K拍摄和实时避障中的表现。通过实测数据展示了CV5的异构计算架构、8K视频编码性能和CVflow®AI引擎的加速效果,同时提供了开发中的优化技巧和散热建议,为无人机开发者提供了实用的参考。

weixin_30861797的博客 358

MySQL视图创建和给予用户视图权限

MySQL视图创建和给予用户视图权限

weixin_45086164的博客 5819

保姆级教程:用STM32单片机实现国标交流充电桩的CP信号检测(附完整代码)

本文详细介绍了基于STM32单片机实现国标交流充电桩CP信号检测的全流程,包括硬件设计、软件架构和充电控制实现。通过分压电路设计、ADC配置和状态机逻辑,确保充电过程的安全与可靠性,适用于新能源汽车充电桩开发。附完整代码和调试技巧,助力开发者快速掌握关键技术。

weixin_42641998的博客 251

工业级实战:C#实现欧姆龙PLC FINS-TCP通信(协议解析+完整源码+避坑指南)

// FINS主命令码+子命令码枚举(工业级常用指令)ReadData = 0x0101, // 读取数据WriteData = 0x0102, // 写入数据ReadPlcStatus = 0x0601, // 读取PLC状态ResetPlc = 0x0605 // 复位PLC(慎用)/// 欧姆龙PLC数据区枚举(工业常用)CIO = 0x30, // CIO区(核心数据区)WR = 0x31, // 工作区HR = 0x32, // 保持区。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 656

MOSS/Sharepoint 控制视图页面访问权限开发的问题(代码法)

在MOSS/Sharepoint  控制视图页面访问权限开发的问题,这些功能通过sharepoint已有功能是很难解决的,下面我来介绍解决方案。 首先: 先建个ListViewPermissionConfig列表,用来存放视图权限的配置信息。 列表栏:ListName(单行文本)、ViewName(单行文本)、ViewGuid(单行文本)、Permission(人员或用户组,允许

dz45693的专栏 2687

YOLOv8融合HAttention:激活更多像素的注意力机制科研实践指南

HAttention通过层级化像素激活与融合的设计,为YOLOv8的像素级特征利用能力带来了质的飞跃。从原理理解到代码实现,再到集成调优,每一步都是科研中“解决像素信息遗漏难题”的具体实践。如果你在实验中发现某类细节或大尺度目标的检测仍有不足,可以尝试结合数据增强(如随机裁剪、多尺度训练)来强化模型对像素特征的学习能力。科研的价值在于不断挖掘技术的潜力,希望这份指南能真正帮你在目标检测的像素级特征利用领域找到新的突破点,祝你在科研探索中持续收获创新与成长。

FJN110的博客 106

MOSS/Sharepoint 控制视图页面访问权限开发的问题(代码法)

在MOSS/Sharepoint 控制视图页面访问权限开发的问题,这些功能通过sharepoint已有功能是很难解决的,下面我来介绍解决方案。 首先: 先建个ListViewPermissionConfig列表,用来存放视图权限的配置信息。 列表栏:ListName(单行文本)、ViewName(单行文本)、ViewGuid(单行文本)、Permission(人员或用户组,允许多选)。 ...

weixin_30421809的博客 105

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

ASP.NET访问权限管理

以前接触到的访问权限,用户登录进来,判断一下用户的身份,根据其身份的权限,进行显示相应的内容。不过那样有个弊端,权限是写死在程序里面的。这一点对于灵活性高的系统来说,肯定是不可取的。所以我们要把权限控制变编译时为运行时。     废话不多说,直切主题。下面这幅图是实现这个权限管理功能的表结构逻辑。对系统用户进行分组,对功能进行整理,然后让组与功能对应起来,只要该用户属于该组,那他就能访问

崔成龙 . 勇往直前 7508

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

爱上MVC3系列~使用Func<string, HelperResult>实现访问权限的设计

回到目录 这个文章事实上也是一个系列,主要介绍小微对于MVC3上的权限设计方案,如对Action的访问权限,对PartialView的访问权限,和我最近研究的 对页面中Html块级访问权限! 一 提供好的~Action与Controller加访问权限 二 扩展MVC中的Html.Action,为分部视图作访问权限 三 扩展MVC的HtmlHelper,为页面某块HTML块(闭合的块)加访...

weixin_33905756的博客 76

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【ASP.NET Web API教程】2.3.4 创建Admin视图

原文:【ASP.NET Web API教程】2.3.4 创建Admin视图注:本文是【ASP.NET Web API系列教程】的一部分,如果您是第一次看本博客文章,请先看前面的内容。 Part 4: Adding an Admin View 第4部分:添加Admin视图 本文引自:http://www.asp.net/web-api/overview/creating-web-apis/us...

weixin_33982670的博客 109

Web应用程序系统的多用户权限控制设计及实现-权限模块【10】

前五章均是从整体上讲述了Web应用程序的多用户权限控制实现流程,本章讲述Web权限管理系统的权限配置模块。页面模块涉及到的数据表为权限表。权限配置模块是按照用户组和页面,栏目结合组成的。通过配置一个用户组可以访问的页面即完成了该类型用户的访问权限管理。 1.1权限域 为了更规范和方便后期系统的二次开发和维护,对应特定的业务模块采用Area(域)的方式开发,权限模块的开发域如下图所示: 由...

weixin_34077371的博客 230

开发期间模板引擎页面修改以后,要实时生效 || 登陆成功,防止表单重复提交,可以重定向||只有登录之后才能访问相关的页面

去除模板引擎的缓存 th:if 优先级高于th:text 登陆成功,防止表单重复提交,可以重定向到主页 只有登录之后才能访问相关的页面 login.html <!DOCTYPE html> <html lang="en" xmlns:th="http://www.thymeleaf.org"> <head> &l...

qq_39368007的博客 476

django写用户登录判定并跳转制定页面

1.首先看要设置登陆的界面 book/view.py @user_util.my_login #相当于 select_all=my_login(select_all) def select_all(request): # 查询所有的书 book_list = BookInfo.objects.all() # 返回 return render(request, ...

cuishao 5949

登录逻辑实现

Django设计登录需要使用到的 HttpResponse--------》返回response对象到浏览器 render------》建立视图与模板之间的联系,实现视图与模板之间的传参 redirect------》重定向网页 1,实现登录基本逻辑 简单登录页面,加入验证码刷新,填入功能,登陆后下次账户自动填充 views业务处理视图中包含视图 读取session中账户信息,若有传参给登录页面,...

jueji2020的博客 2177

flask笔记(三)Flask 添加登陆验证装饰器报错,及解析

Flask 添加登陆验证装饰器报错,及解析 写这个之前,是想到一个需求,这个是关于之前写Flask笔记(二)中的一个知识点,路由相关 需求为 : 有一些页面必须是登陆之后才能访问的,比如ShoppingCart,说白了就是写一个登陆验证,那怎么才能知道当前这个请求 就是登陆状态的呢?如果不是登陆状态,那应该重定向到login页面 from flask import Flask,request,se...

weixin_34217773的博客 604
上一篇: MOSS数据库服务器迁移步骤
下一篇: MOSS字段编辑权限控制方案--发布源码
rickyll
博客等级 码龄19年 14粉丝 75原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值