2013年1月14日星期一

【翻译】The “reassociation” business of Fusion Middleware

原文出处:http://fusionsecurity.blogspot.jp/2011/10/reassociation-business.html 下面大致翻译了一下,不精准,笔记性质。

 从Fusion Middleware 11.1.1.4开始,OPSS(Oracle Platform Security Service)支持三种类型的安全存储(Security Store):文件、OID(Oracle Internet Directory)以及Oracle DataBase。当weblogic server的domain刚被创建出来时,默认地,OPSS是和文件类型的存储相关联的。文件存储比较适合开发阶段。对于生产环境,不推荐文件存储类型(请参考“ Multiple Nodes Servers Environments”)。如果你的运行环境是在一个台机器上只有唯一的一个weblogic domain、一个weblogic server,文件类型存储也是能工作的。但是99.99%的情况,你的SOA、WebCenter环境是运行在集群环境下的多个服务器上。文件存储不提供这种伸缩性,这种情况下,你应该考虑OID或者Oracle DataBase。

实际上,很多的Fusion应用时使用OID。:) OPSS安全存储由policy,credential,keys以及audit services组成。注意:我没有提及identity store service。因为,OPPS把identity store service'委托给了在weblogic server里配置的'identity provider'。 OPSS不是一个产品,它是Fusion Middleware使用的一组安全服务。 这个帖子十分详细地讲述了如何配置weblogic server domain使用以上的三种不同security store。这也是"reassociation(关联)"这个词的来历。 下面的内容和 “Configuring OPSS Security Store”(强烈推荐阅读)有些重叠。


 在更进一步讲述association之前,我们先说说jps-config.xml的关键点。

jps-config.xml
OPSS使用这个文件描述它所提供的服务。通过设置系统属性–Doracle.security.jps.config你可以指定OPSS从哪里读取这个文件,通常在JRF(Java Required Files)domain的setDomainEnv.sh里设置这个文件的位置。
缺省的位置是${DOMAIN_HOME}/config/fmwconfig/jps-config.xml。(定义在变量EXTRA_JAVA_PROPERTIES里)。建议不要轻易修改jps-config.xml,因为jps-config.xml包含了许多对其它文件的引用。 当以通过config.sh脚本来创建BPM,SOA或者WebCenter 域(domain)时,JRF template会自动被选中,因为这些鱼都依赖JRF。 jps-config.xml是作用于域范围的配置文件。并不存在针对server或者application这一层起作用的jps-config.xml文件。但是,jps-config.xml里context的概念,可以让你让不同的application使用不同的安全服务。这是另外一个话题了。 当执行了reassociation操作,配置的改变会被写入jps-config.xml。破损的jps-config.xml会让你的domain运行在不稳定的状态。所以,对jps-config.xml的修改要慎之又慎。不要手工修改这个文件,而是要用Enterprise Manager或者wlst。

  The Policy Store Policy store保存着Fusion Middleware实例上运行的application的所需要的全部安全策略,包括赋予pricials(users,groups, application roles)以及code 的允许权限。 比如,如果你查看BPM域上OOTB的policy store,你就会发现这些策略分成四组,供4个应用 (OracleBPMProcessRolesApp, OracleBPMComposerRolesApp, b2bui and soainfra)使用。另外还有一组对部署在这个域的所有应用都生效的code-source策略。 jps-config.xml文件里的default context定义了Fusion Middleware里所有应用都用到的服务。

The Credential Store Credential store保存着Fusion Middleware应用连接到其它系统所用的凭证。这不同于下面要讲到的boostrap credentials。 File Based Credential Store Service Instance 

Reassociating to OID 有两种方式做reassociation。 Enterprise Manager和wlst。(只大致介绍一下关键参数的含义,具体见原文。)
EM界面里的: Root DN: 这个需要再做reassociation之前在OID里创建。 Create New Domain: 这里不是表示“创建一个新域”的意思。这里的意识是说,要关联的OID是不是要要从源security store导入数据进行初始化。不选择这个checkbox意味着,你有多个domain共享这个security store。 Domain Name: 这里方便起见,EM使用weblogic域名。但实际上,它可以是任意名字。这个名字用于标识它为一个container节点。多个weblogic域可以绑定到相同的container,但是,一个weblogic域不能绑订到不同的container。

wlst里的参数: > reassociateSecurityStore(domain="farm1", admin="cn=orcladmin", password="welcome1", ldapurl=ldap://localhost:3060, servertype="OID", jpsroot="cn=SecurityStore",[join=”trueOrfalse”]) 理解了EM的输入,wlst就容易理解了。join这个参数,对应着EM里的是否'Create new domain'。

Bootstrap cwallet.sso 
当reassociated到OID时,weblogic需要知道连接到OID服务器的登录凭证。缺省地,这些凭证被保存在jps-config.xml bootstrap.credstore指定的位置。 如果以后需要修改这个credentials,可以使用以下wlst命令: > modifyBootStrapCredential(jpsConfigFile='',username='', password='') 这里 jpsConfigFile = 有效的jps config文件路径。 username = 用户名 password = 新密码 比如 > modifyBootStrapCredential(jpsConfigFile='/opt/wls/oracle/middleware/user_projects/domains/soa_domain/config/fmwconfig/jps-config.xml',username='cn=orcladmin', password='welcome1')

没有评论:

发表评论