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,设置只有某个组可以访问。
查看全文
相关阅读:
只因写了一段爬虫,公司200多人被抓!
中国顶级程序员图鉴
漫画 | 外行对程序员误会有多深!
关于深夜技术事故纪实录的若干问题回复
富士康14跳被我赶上了,流水线车间真的没有梦想 | 十年系列
祖国和我们小山村的希望
互联网从此没有 BAT
程序员,职场上请远离这种人!
HTML5漂亮实用的电子书
这个jQuery导航菜单怎么样
原文地址:https://www.cnblogs.com/jianyi0115/p/1241210.html
最新文章
第10天:Python 类与对象
第9天:Python tupple
第8天:Python list
第7天:Python 数据结构--序列
第6天:Python 模块和包
第5天:Python 函数
第4天:Python 流程控制
第3天:Python 变量与数据类型
第2天:Python 基础语法
和黑客斗争的 6 天
热门文章
“删库跑路”这件事情真的发生了 ,还是技术总监干的!
TIOBE 编程语言排行榜是什么,它是如何计算编程语言排行的?
我在华为做外包的真实经历!
技术人如何利用 github+Jekyll ,搭建一个独立免费的技术博客
第 1 份工作,我只干了 2 周就被辞退了 | 十年系列
漫画 | 程序员成神之路,一年挖坑,五年扛旗,十年成神
我在培训机构折腾的经历,再和大家聊聊这个行业| 十年系列
代码传奇 | 身价10亿的程序员 雷军当年也为他打工——WPS之父 求伯君
从刷卡购物来讲,第三方支付是怎么运转的?
爬虫究竟是合法还是违法的?
Copyright © 2011-2022 走看看