WEB开发网
开发学院软件开发Java 如何通过 JAVA Security API 来定性 IBM FileNet ... 阅读

如何通过 JAVA Security API 来定性 IBM FileNet P8 内容查询和存储的安全

 2009-11-05 00:00:00 来源:WEB开发网   
核心提示: 下面这段代码来进行登陆操作:清单 1. 使用 API 来登录LoginContextlc=newLoginContext("mysystem",newUserPasswordHandler("username@testdom.local","pa

下面这段代码来进行登陆操作:

清单 1. 使用 API 来登录

 LoginContext lc = newLoginContext("mysystem", 
      newUserPasswordHandler("username@testdom.local", "password")); 
 lc.login(); 
 // 将 JAAS Subject 与 UserContext 
 UserContext uc = UserContext.get(); 
 uc.pushSubject(lc.getSubject()); 

Login() 方法如果没有抛出异常,就表示该用户登陆成功了,即该用户通过了认证。

每个 UserContext 对象是与每个访问Content Engine Java API 的线程联系在一起的。一个 JAAS Subject 应该与这个线程是关联的,这是通过调用 UserContext.pushSubject() 方法来实现的。

注意:UserContext 类提供了一辅助方法来进行使用普通的用户名和密码的 JAAS 登陆,例如:

清单 2. 使用 JAAS 登录

 // Obtain a JAAS Subject and associate it with the UserContext 
 UserContext uc = UserContext.get(); 
 uc.pushSubject( 
UserContext.createSubject("connection", "username", "password", "FileNetP8")); 

在方法 createSubject()中,可以定义用户名和密码,以及选择连接方式,其中 FileNetP8 指定使用 EJB 方式连接,FileNetP8WSI 指定使用 WSI 方式来连接。

使用 Security Policy

下面我们来创建和赋值一个 security policy:

首先,创建三个 SecurityTemplate 对象,并把它们加到一个 SecurityTemplateList 对象中。其中,两个 template 的类型是 VersioningSecurityTemplate, 另一个是 ApplicationSecurityTemplate 。 VersioningSecurityTemplate 在 object 发行和取代版本时自动地应用。而 ApplicationSecurityTemplate 则需要手动地应用到一个 object 上。对于每个 template ,属性 TemplatePermissions 被设置到一个 AccessPermissionList 对象中,这是由 setPermissions() 方法来返回的。

上一页  2 3 4 5 6 7 8 9 10  下一页

Tags:如何 通过 JAVA

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接