MOSS上載文檔並控制權限

 

        衆所周知,WSS3.0是一個基於角色的用戶權限系統,我們可以管理網站的權限、列表的權限、文件夾(列表和文檔庫)的權限,還有條目(List Item級別)的權限,WSS3.0還提供了權限的繼承,然而,有的時候我們希望在某些功能上能夠有獨立的權限,並且實現動態的去控制一個User或者一個Group對站點內容的訪問,今天筆者做的這個Demo記錄了在SharePoint開發中,如何通過Coding的方式去實現權限級別的定義以及權限的分配.

涉及內容:

1. 特權提升,以管理員的權限運行代碼

2.上載文檔至SharePoint網站

3. 給某個用戶指定列表項的訪問權限

下面所做的事情都是在前面幾篇的基礎之上進行改動,Microsoft SharePoint Designer打開Docs子站點,新建一個頁面,取名upload.aspx,並繼承default.master母板頁

     使用Microsoft SharePoint Designer工具在文檔中心子站點的deafult.aspx頁面上添加一個名爲上載文檔鏈接,該鏈接指向上面建好的upload.aspx,最終頁面效果如下圖顯示

        打開Visual Studio 2005,新建一個ASP.NET Web Application,名稱爲UploadFile;刪除Default.aspx頁面,我們不需要;Application上添加一個User Control,命名爲FileUpload.ascx.在編碼之前,我做了這樣一件事情,編輯生成後的事件命令行,這樣做的目的是每當我們生成項目時可以自動的幫我們將想要的程序集以及用戶控件文件拷貝到SharePoint虛擬路徑下,省去手動拷貝這一過程,具體操作請參閱前面幾篇的內容.

用戶控件的界面如下圖所示,兩個DropDownListID分別爲ddlListNameddlFolderName,上載按鈕的IDbtnUpload

         FileUpload.ascx.cs代碼如下,指定將文檔上傳至文檔中心站點的我的文檔列表下,並給用戶”yopeng”賦予對該文檔只讀權限,記得引入命名空間Microsoft.SharePoint和System.IO

       生成應用程序,打開文檔中心網站,單擊上載文檔鏈接,跳轉到upload.aspx頁面,依次網站操作”->”編輯網頁”,選擇添加Web部件”,找到quickPart,選中並點擊添加按鈕,修改該共享Web部件,User Control List中選擇生成的FileUpload用戶控件,效果如下,退出編輯模式

現在驗證下結果,上傳一個文檔到產品目錄下

等待頁面刷新,提示上傳成功

回到文檔中心首頁,查看產品目錄多了剛纔上傳的文檔

到產品目錄中查看的權限變化,使用yopeng用戶登錄,看到對於該條目,帳戶yopeng只有查看屬性的權限,這是因爲在代碼中我指定了帳戶yopeng只能有查看該條目的權限

我們用管理員登錄,看下該條目的權限是否有變化

    當我們用管理員帳戶登錄時,可以看到對條目是有很多權限的,由此證明,設置yopeng帳戶對該條目查看的權限是有達到預期的效果的,您不妨自己動手試試. 

 

發佈了8 篇原創文章 · 獲贊 0 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章