浅谈sharepoint的权限的研究

来源:互联网 发布:ubuntu输入法乱码 编辑:程序博客网 时间:2024/05/21 17:18
Sharepoint的权限,主要维护在RoleAssignment表中,当只有一个网站时,在Sharepoint2007的Content库里可以查询到每篇文章的权限,Sql如下:

SELECT  d.LeafName ,
        r.RoleID ,
        r.Title ,
        u.tp_Login ,
        u.tp_title

FROM    dbo.AllDocs d ,
        dbo.RoleAssignment ra ,
        dbo.Roles r ,
        dbo.UserInfo u
WHERE   d.ScopeID = ra.ScopeID
        AND ra.RoleId = r.RoleId
        AND ra.PrincipalId = u.tp_id 

在Sharepoint2010里,文档除了AllDocs表外,增加了AllUserData表,查询文章权限的Sql语句如下:

select da.nvarchar1,da.nvarchar3,da.ntext4,
userinfo.tp_Login,userinfo.tp_Title,roles.Title,
ra.SiteId,ra.ScopeId,ra.RoleId,ra.PrincipalId
from wss_content_cskb.dbo.RoleAssignment ra,
wss_content_cskb.dbo.Roles,
wss_content_cskb.dbo.UserInfo,
wss_content_cskb.dbo.AllUserData da,
wss_content_cskb.dbo.AllDocs docs
where da.tp_IsCurrent='1' and da.tp_DeleteTransactionId=0x 
and ra.SiteId=roles.SiteId and ra.RoleId=roles.RoleId
and ra.SiteId=userinfo.tp_SiteID and ra.PrincipalId=userinfo.tp_ID
and da.tp_DocId=docs.ID
and docs.ScopeId=ra.ScopeId and roles.Title<>N'受限访问'
0 0
原创粉丝点击