MSDN Visual系列:在WSSv3中编程方式激活单个文档库的审核功能
生活随笔
收集整理的這篇文章主要介紹了
MSDN Visual系列:在WSSv3中编程方式激活单个文档库的审核功能
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
原文:http://msdn2.microsoft.com/en-us/library/bb418730.aspx
WSSv3有一個很強大基礎結構,專門用來審核用戶對頁面,文檔和列表項的訪問。您可以在整個站點集上啟用審核功能,但是如果可以將啟用審核的粒度更小,無疑會對我們的編程工作更有利。比如,您或許希望可以在一個特定的列表或文檔庫上啟用審核。事實上,我們可以做到的遠不只于此,我們甚至可以在某個特定的列表項或文檔上啟用審核。
如何通過編程方式去實現呢?下面將以代碼示例的方式演示給大家。
在WSS對象模型中,SPList,SPListItem對象都有一個Audit屬性,用于標示審核的配置情況。下面的例子展示了如何針對特定的兩個事件在一個文檔庫上啟用審核。
c#
SPSite?siteCollection?=?SPContext.Current.Site;
SPWeb?site?=?siteCollection.RootWeb;
SPList?docLib?=?site.Lists("Presentations");
//?Turn?on?auditing?flags.
docLib.Audit.AuditFlags?=?SPAuditMaskType.View?|
??????????????????????????SPAuditMaskType.ChildDelete;
docLib.Audit.Update(); 大家一定注意使用的操作符號,按位或,"|"
前面的例子展示了如何配置啟用當有查看或Child(是指文件夾嗎?)被刪除時的審核,還有許多其他的審核項可供使用。下面是SPAuditMaskType的所有用于控制文檔庫會發生的各種審核類事件的枚舉值。
SPAuditMaskType.ChildDelete
SPAuditMaskType.Delete
SPAuditMaskType.ProfileChange
SPAuditMaskType.SchemaChange
SPAuditMaskType.SecurityChange
SPAuditMaskType.View
而下面的枚舉值是SDK中的一個完整的列表。
SPAuditMaskType.All
SPAuditMaskType.CheckIn??
SPAuditMaskType.CheckOut??
SPAuditMaskType.ChildDelete??
SPAuditMaskType.Copy??
SPAuditMaskType.Delete??
SPAuditMaskType.Move??
SPAuditMaskType.None??
SPAuditMaskType.ProfileChange??
SPAuditMaskType.SchemaChange??
SPAuditMaskType.Search??
SPAuditMaskType.SecurityChange??
SPAuditMaskType.Undelete??
SPAuditMaskType.Update??
SPAuditMaskType.View??
SPAuditMaskType.Workflow
希望會給大家更多的提示。
在WSS中,審核支持配置于站點集之上。您可以在整個站點集上通過對SPSite對象的Audit屬性編程啟用審
核。但是,這種做法對于一些大的網站集來說可能不會有效,可以想象這將意味著會產生很大的信息量。
注意:
當您設置了一個文檔庫的審核標記,您只是針對那些發生在文檔庫本身之上的事件來啟動審核。并沒有設置這些審核標記到文檔庫里面的文檔。比如,當您查看整個文檔庫,這個事件會記錄下來,但是當您更新文檔庫里的某個文檔,這個事件并不記錄。
WSS對象模型中的許多不同類型的對象都是可以審核的,包括SPSite,SPWeb,SPList和SPListItem.每個對象類型的Audit屬性都可以通過使用SPAuditMaskType枚舉值進行配置,正如上面所展示的那樣。您可以使用一個SPAuditMaskType.All來啟用所有事件上的審核。您也可以通過使用按位或操作符,來靈活的組合出自己項目所需要的特定審核配置。
需要注意的一點,只有在SPSite對象上進行的審核配置會影響到站點中的其他對象。其他在其子對象如SPWeb,SPList,SPDocumentLibrary上的設置值并不會影響其下的對象。因此,如果您的項目需要比SPSite級別更細粒度的配置審核,您可以使用SPListItem類來配置特定列表項或文檔上的Audit屬性。
視頻演示
?
更詳細的參考文章(中文MSDN)
WSSv3有一個很強大基礎結構,專門用來審核用戶對頁面,文檔和列表項的訪問。您可以在整個站點集上啟用審核功能,但是如果可以將啟用審核的粒度更小,無疑會對我們的編程工作更有利。比如,您或許希望可以在一個特定的列表或文檔庫上啟用審核。事實上,我們可以做到的遠不只于此,我們甚至可以在某個特定的列表項或文檔上啟用審核。
如何通過編程方式去實現呢?下面將以代碼示例的方式演示給大家。
在WSS對象模型中,SPList,SPListItem對象都有一個Audit屬性,用于標示審核的配置情況。下面的例子展示了如何針對特定的兩個事件在一個文檔庫上啟用審核。
c#
SPSite?siteCollection?=?SPContext.Current.Site;
SPWeb?site?=?siteCollection.RootWeb;
SPList?docLib?=?site.Lists("Presentations");
//?Turn?on?auditing?flags.
docLib.Audit.AuditFlags?=?SPAuditMaskType.View?|
??????????????????????????SPAuditMaskType.ChildDelete;
docLib.Audit.Update(); 大家一定注意使用的操作符號,按位或,"|"
前面的例子展示了如何配置啟用當有查看或Child(是指文件夾嗎?)被刪除時的審核,還有許多其他的審核項可供使用。下面是SPAuditMaskType的所有用于控制文檔庫會發生的各種審核類事件的枚舉值。
SPAuditMaskType.ChildDelete
SPAuditMaskType.Delete
SPAuditMaskType.ProfileChange
SPAuditMaskType.SchemaChange
SPAuditMaskType.SecurityChange
SPAuditMaskType.View
而下面的枚舉值是SDK中的一個完整的列表。
SPAuditMaskType.All
SPAuditMaskType.CheckIn??
SPAuditMaskType.CheckOut??
SPAuditMaskType.ChildDelete??
SPAuditMaskType.Copy??
SPAuditMaskType.Delete??
SPAuditMaskType.Move??
SPAuditMaskType.None??
SPAuditMaskType.ProfileChange??
SPAuditMaskType.SchemaChange??
SPAuditMaskType.Search??
SPAuditMaskType.SecurityChange??
SPAuditMaskType.Undelete??
SPAuditMaskType.Update??
SPAuditMaskType.View??
SPAuditMaskType.Workflow
希望會給大家更多的提示。
在WSS中,審核支持配置于站點集之上。您可以在整個站點集上通過對SPSite對象的Audit屬性編程啟用審
核。但是,這種做法對于一些大的網站集來說可能不會有效,可以想象這將意味著會產生很大的信息量。
注意:
當您設置了一個文檔庫的審核標記,您只是針對那些發生在文檔庫本身之上的事件來啟動審核。并沒有設置這些審核標記到文檔庫里面的文檔。比如,當您查看整個文檔庫,這個事件會記錄下來,但是當您更新文檔庫里的某個文檔,這個事件并不記錄。
WSS對象模型中的許多不同類型的對象都是可以審核的,包括SPSite,SPWeb,SPList和SPListItem.每個對象類型的Audit屬性都可以通過使用SPAuditMaskType枚舉值進行配置,正如上面所展示的那樣。您可以使用一個SPAuditMaskType.All來啟用所有事件上的審核。您也可以通過使用按位或操作符,來靈活的組合出自己項目所需要的特定審核配置。
需要注意的一點,只有在SPSite對象上進行的審核配置會影響到站點中的其他對象。其他在其子對象如SPWeb,SPList,SPDocumentLibrary上的設置值并不會影響其下的對象。因此,如果您的項目需要比SPSite級別更細粒度的配置審核,您可以使用SPListItem類來配置特定列表項或文檔上的Audit屬性。
視頻演示
?
更詳細的參考文章(中文MSDN)
轉載于:https://www.cnblogs.com/Sunmoonfire/archive/2007/05/23/757537.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的MSDN Visual系列:在WSSv3中编程方式激活单个文档库的审核功能的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Confirm的用法!
- 下一篇: 64位进程调用32位dll的解决方法