zoukankan
html css js c++ java
控制视图页面的访问权限
问题:
控制视图页面的访问权限,设置只有指定组的用户可以访问。
解决方案:
写一个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,设置只有某个组可以访问。
查看全文
相关阅读:
匿名变量
Vue父子组件传值与非父子传值
TCP三次握手分析
@media screen 响应式布局
H5新增多媒体标签
npm+node+vue配置一套带走
vue+echarts全国疫情地图
js本地时间格式化
vue iview分页
Vue打包后访问静态资源路径问题
原文地址:https://www.cnblogs.com/jianyi0115/p/1241210.html
最新文章
日常记录
fastapi小技巧
vue 后期优化
mongo connector笔记
个人实用api
vue 的高级用法
minio 的部署需要注意的部分
python time format
tweepy 使用笔记
docker 启动mongo
热门文章
vue 的ref需要注意的部分
centos7 安装rails6 环境
Printf常用格式
go程序执行顺序(转)
gin框架
Go字节数组与字符串相互转换
指针变量
函数
流程控制
类型
Copyright © 2011-2022 走看看