您的位置:首页 > 移动开发

EnterPrise应用(5) Security Application Block应用程序块 授权处理(VB.NET)

2006-11-07 08:53 351 查看
在EnterPrise SAB应用模块中,授权部分(Authorization)的处理是个非常关键的的部分,前期的用户处理、角色处理都是在为授权处理做铺垫,在项目设计中运用最广的也是此部分,它对于用户的登陆、业务的操作权限、管理等权限起到判别、识别并授权的作用。通过授权进行深度防范是安全应用的一个重要策略。
本文主要对授权的基本操作进行一些说明。
在进行授权操作之前,要先建立授权规则。授权的要素一般包括:

I:Identities(身份)

R:Roles(角色)

Operators(关系操作符 AND OR NOT AND () )

建立规则部分请参阅TerryLee的安全应用程序块——进阶篇
/article/4584234.html

Public Function RuleOK()Function RuleOK()
'本例仅是个简单的测试
'其中用户身份以及角色可以通过Security Cache中的Token
'进行继承,而不必手写赋值
Dim identity As String = "a"
Dim role As String = "OP"
'操作标识(授权规则)
Dim rule As String = "RulePrint"
'创建授权,其中括号部分中的内容为制定的操作项目,如果不写的话为默认
Dim ruleProvider As IAuthorizationProvider = AuthorizationFactory.GetAuthorizationProvider("RuleProvider")
'取用户、角色信息
Dim principal As IPrincipal = New GenericPrincipal(New GenericIdentity(identity), New String() {role})

If (Not ruleProvider Is Nothing) Then

'进行判断
Dim authorized As Boolean = ruleProvider.Authorize(principal, rule)
If (authorized) Then
label2.Text = "okok"
Else

End If
End If

End Function

另说明,一般在做操作授权的过程中,可以通过SecurityCacheFactory和IToken来管理安全应用中的缓存,已继承IPrincipal和IIdentity。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐