功能權限在使用之前,必須進行注冊,將功能注冊到系統,才能管理用戶是否具有某種功能的權限,在業務邏輯中決斷用戶是否具有某種權限才不會失敗。
功能注冊必須使用兩個自定義屬性:
IBeamSecurityAttribute 和 IBeamSecurityFlagAttribute
定義如下:
/// <summary>
/// “IBeamSecurityAttribute” 提供了一個能夠應用在類的成員上的屬性標簽以執行訪問者訪問類成員時的授權。
/// </summary>
??? [ AttributeUsageAttribute ( AttributeTargets .Method | AttributeTargets .Property, AllowMultiple = false )]
??? public sealed class IBeamSecurityAttribute : Attribute
?
/// <summary>
/// 功能標識屬性
/// </summary>
??? [ AttributeUsageAttribute ( AttributeTargets .Class | AttributeTargets .Interface, AllowMultiple = false )]
??? public sealed class IBeamSecurityFlagAttribute : Attribute
?
所在組件: IBeamMDAACore.dll
名稱空間: IBeam.MDAA.Objects
用法舉例: ??????
?
標記類具有功能定義:
[ IBeamSecurityFlag ()]
?? ?[ Serializable ()]
??? public class Products : BusinessBase < Products >
?
功能定義,標記在功能方法上:
[ IBeamSecurity (FunctionID = ACPLID .FunAddProducts, Name = " 添加產品 " ,
??????????? Category = " 進銷存產品管理 " , Description = " 賦予用戶添加產品的權限 " )]
??? public static bool CanAdd()
??? {
?? ???? return Csla. ApplicationContext .User.IsAllowed( ACPLID .FunAddProducts);
??? }
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
