posts - 5,  comments - 5,  trackbacks - 0
          近日遇到一個(gè)詭異的需求是這樣的:
          某個(gè)客戶(hù)需要做一個(gè)搜索, 得到文檔的信息
          這個(gè)文檔庫(kù)可能是帶權(quán)限的, 需要在顯示結(jié)果的時(shí)候判斷當(dāng)前用戶(hù)在這個(gè)文檔庫(kù)上是否有權(quán)限

          而這個(gè)文檔庫(kù)可能放在一個(gè)wss網(wǎng)站上
          只允許一個(gè)部門(mén)的人進(jìn)入這個(gè)網(wǎng)站, 但是該文檔庫(kù)可以給其他部門(mén)的人加權(quán)限以便查看其中的文檔

          以下是用對(duì)象模型的方法判斷文檔庫(kù)上的權(quán)限:
          一般來(lái)說(shuō)首先想到的方法肯定是這樣的:
          SPSite site = new SPSite("
          http://mysite_url ");???// Line 1
          SPWeb web = site.OpenWeb();????????????????????????? // Line 2
          SPListCollection lists = web.Lists;?????????????????????? // Line 3
          SPList list = lists["MyDocLib"];??????? ??????????????????? // Line 4
          bool perm = list.Permissions.DoesUserHavePermission(SPRights.xxxx);?

          但是, 對(duì)于上面提到的那種情況, 這種方法是有問(wèn)題的
          問(wèn)題一:
          該用戶(hù)如果不是該網(wǎng)站成員的話, 上面的做法得不到網(wǎng)站
          其表現(xiàn)就是webpart所在頁(yè)面會(huì)反復(fù)彈出用戶(hù)名密碼框......即使你做了try-catch也沒(méi)用, 截不下這個(gè)異常
          問(wèn)題二:
          該用戶(hù)不是該網(wǎng)站成員, 默認(rèn)情況下不允許使用web.Lists[]這種方法, 會(huì)有異常

          對(duì)于第一個(gè)問(wèn)題解決如下, 插入一行代碼:
          site.CatchAccessDeniedException = false;??? // Line 1.5
          這個(gè)屬性就像其名字一樣, 嗯, 不羅嗦了, 就是可以拿到那個(gè)SPWeb對(duì)象了

          對(duì)于第二個(gè)問(wèn)題, 插入一行代碼:
          lists.ListsForCurrentUser = true;??????? // Line 3.5
          這樣再用web.Lists[]就能得到SPList對(duì)象, 然后再判權(quán)限就行了

          上面兩個(gè)對(duì)象模型估計(jì)一般情況下都是用不上的...只有在某些詭異需求的情況下可能會(huì)用到

          轉(zhuǎn)載:otec:Erucy
          posted on 2006-11-29 11:20 曾科 閱讀(294) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): SharePoint Portal Server

          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(3)

          隨筆檔案

          文章分類(lèi)

          文章檔案

          相冊(cè)

          .net

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          主站蜘蛛池模板: 永顺县| 姜堰市| 娱乐| 类乌齐县| 滁州市| 武邑县| 常山县| 高尔夫| 隆昌县| 东乌| 溧阳市| 长乐市| 浦东新区| 文山县| 台湾省| 方山县| 东宁县| 抚宁县| 酉阳| 武定县| 韶关市| 吉水县| 板桥市| 班戈县| 内黄县| 敦化市| 灌南县| 安西县| 镇远县| 青田县| 台南市| 铁岭县| 崇文区| 普安县| 托克托县| 滨州市| 富宁县| 阳泉市| 淮安市| 来安县| 威海市|