WEB开发网
开发学院网络安全安全技术 IBM Rational Asset Manager 基础安全 阅读

IBM Rational Asset Manager 基础安全

 2008-11-27 13:35:35 来源:WEB开发网   
核心提示:关于 IBM Rational Asset Manager当今组织所面临的新的软件挑战产生于复杂系统,异地分布式开发以及法规遵循需求,IBM Rational Asset Manager 基础安全, 更常见的是,这些挑战定位于一种强调面向服务架构(SOA)的开发方法, 第 4 步. 增加 LDAP 用户和用户组到 Ra

关于 IBM Rational Asset Manager

当今组织所面临的新的软件挑战产生于复杂系统,异地分布式开发以及法规遵循需求。 更常见的是,这些挑战定位于一种强调面向服务架构(SOA)的开发方法。 SOA 实施正在产生新的元数据类型,它们要求跨企业的管理。 IBM Rational Asset Manager 面向于此问题。

Rational Asset Manager 是一个资产管理数据库,其使组织能够识别,管理和治理不同种类的非实时资产。 一个资产是许多工作产品的集合,例如应用程序,组件,框架,模版,模式,模型,服务(可能是一个 SOA 的部分),需求,源代码,测试用例,以及其它种类的工作产品。 一个资产

是一个给定的上下文环境。

包括使用的规则。

特点在于可变性。

Rational Asset Manager 使用 Reusable Asset Specification (RAS)来定义、创建、修改和存储相关工作产品的资产。 它也提供了资产特定类型搜索,以及治理和度量资产重用。

在 Rational Asset Manager 中管理用户和组

要理解如何在 Rational Asset Manager 中管理用户和组,您必须理解一个 Community 的概念。 在 Rational Asset Manager 中的一个 Community 是资产的一个目标观众,也是资产共享和协作的一个集中地方。 一个 Community 可以产生、使用和管理资产,并且可以在组织级别被结合起来,或者被定义为一个特定或通用的项目或角色(例如,业务分析师)。

Community 是组织存储库的主要元素,因为它是用户、角色、权限及其资产的集合。 每个 Community 都有一个作为 Community 管理员的用户。

安全核心是应用程序容器,例如 IBM WebSphere Application Server 或 Tomcat,其在 Rational Asset Manager 中使用应用程序级安全来一致地控制安全性。 用户或者从基于文件的用户和组安全文件进行管理,或者从一个轻量级目录访问权限协议(LDAP)目录中产生。 Rational Asset Manager 可以与 LDAP 集成,以获取和重用已有的用户和组信息,并验证用户,验证访问权限。

一个用户组是一组用户,这些用户可以通过手动添加用户来产生,也可以通过绑定一个 LDAP 查询来取得用户数据。

用户组将角色映射到一个给定 Community 的用户组。 每个角色都有确定的权限。 某些缺省角色被增加到一个 Community 中,例如 Asset Consumer。 在一个用户组中的用户拥有一个相特定 Community 的相同角色和权限。 用户也可以被分派到一个 Community 的单独角色,外部用户组,以及可以拥有多个角色。

配置 Rational Asset Manager v7.0 使用 LDAP 的主要步骤

要成功地将 Rational Asset Manager 连接到您的统一 LDAP 系统中,您需要按照次序执行以下四个步骤:

在 WebSphere Application Server 中配置一个基于文件的 User Registry。

配置一个 Rational Asset Manager Custom User Registry 使用 LDAP。

在 WebSphere Application Server 中配置独立的 LDAP 集成。

向 Community 中添加 LDAP 用户和组。

第 1 步. 在 WebSphere Application Server v 中配置一个基于文件的 User Registry

Rational Asset Manager 依赖于 IBM WebSphere Application Server 来与 LDAP 注册表集成,并验证用户登录。 然而,当第一次安装时,Rational Asset Manager 使用基于文件的用户安全验证。 因此,在您完成 Rational Asset Manager 的安装和配置之前,您必须配置基于文件安全的应用程序服务器。

重要:

如果您在 eWAS(WebSphere Application Server 的 Web 版本)上安装 Rational Asset Manager,Installation Manager 会自动为您配置此步骤。 然而,如果您在一个已有的 WebSphere Application Server 上安装 Rational Asset Manager,那么您必须自己配置基于文件安全的服务器。

如果您在一个已配置了 LDAP (或其它安全)的 WebSphere Application Server 上安装 Rational Asset Manager,您必须在完成了 Rational Asset Manager 的安装和配置之后,重新配置基于文件安全的服务器。 在安装和配置 WebSphere Application Server 使用自定制用户注册表之后,您可以恢复之前的安全性配置。 查看本文的问题解决一章,以作为指导。

以后小节提供了在 WebSphere Application Server 版本 6.1 上配置基于文件安全的指导。

将用户和组属性文件复制到 WebSphere Application Server

在开始基于文件安全的配置过程之前,您需要将 user.props 和 groups.props 文本字段复制到您的 WebSphere Application Server 的 Rational Asset Manager 配置档案中。 您可以在 Rational Asset Manager 安装所在目录中查找到这些,例如:

C:Program FilesIBMSDP70ramconfsecurity

Rational Asset Manager v7.0 不提供添加用户和组的 Web 接口或 GUI 接口。 作为替代,用户和组被创建和添加到属性(.props)文件中。 如果您要添加用户和组,要在属性文件中进行,然后重新启动 WebSphere Application Server。

在 users.props 文件的入口遵循如下格式:

name:passwd:uid:gids:display name

name = 用户的 ID

passwd = 用户的密码

name = 用户的唯一 ID

guid = 用户所属组的 ID

display name = (可选)用户的显示名

复制 user.props 和 groups.props 文本文件:

在 <WAS Base>profilesAppSrv01properties 目录下,创建一个新的安全目录。

复制 user.props 和 groups.props 文本文件:

从 (C = 您的驱动器):

C:Program FilesIBMSDP70ramconfsecurity

到 (WAS Base = WebSphere Application Server 目录):

<WAS Base>profilesAppSrv01propertiessecurity

为基于文件安全性配置 WebSphere Application Server 6.1

如果 Rational Asset Manager 的 WebSphere Application Server 还没有启动,请启动它。 您可以从命令行启动服务器,例如:

"<WAS Base>profilesAppSrv01binstartServer.bat" server1

打开浏览器并输入以下地址,登录 WebSphere 管理控制台(其中, port 是访问 WebSphere Application Server 控制台所配置的端口号):

http://localhost:<port>/ibm/console

点击 Log in without a User ID。

在左边的窗格中,点击 Security > Secure administration > application > infrastructure。

在 User account repository 下,选择 Standalone custom registry,然后点击 Configure。

点击 Security。

点击 Secure administration > applications > infrastructure。

在 Available realm definitions 下,选择 Standalone custom registry,然后点击 Configure。

点击 Custom Properties。

点击 New。

在 Name 字段中,输入 groupsFile。

在 Value 字段中,输入 groups.props 文件的路径,例如:

<WAS Base>profilesAppSrv01propertiessecuritygroups.props

点击 Apply,然后点击 OK。

点击 New。

在 Name 字段中,输入 usersFile。

在 Value 字段中,输入 users.props 文件的位置,例如:

<WAS Base>profilesAppSrv01propertiessecurityusers.props

点击 Apply。

在主要最上方点击 Standalone custom registry。

点击 Save。 (参加图 1。)

图 1. 何处保存您的变更

IBM Rational Asset Manager 基础安全

Custom 属性应当看起来如图 2。

图 2. Custom 属性

IBM Rational Asset Manager 基础安全

在 Primary administrative user name,Server user ID 以及 Password 字段中,输入 admin。

点击 OK。

在 Configuration 页面上:

选择 Enable administrative security。

取消选中 Use Java™ 2 security。

确保 Enable application security 保留被选中。

确保 Available realm definitions 被设置为 Standalone custom registry。

点击 Set as current。

点击 Apply。

点击 Save(参见图 3)

图 3. 何处保存您的变更

IBM Rational Asset Manager 基础安全

退出管理控制台。

重新启动 Rational Asset Manager 的应用程序服务器。

第 2 步. 配置 Rational Asset Manager v7.0 自定制用户注册表使用 LDAP

Rational Asset Manager 可以与 LDAP 存储库集成以执行用户验证,取回用户信息以及提升组的绑定。 使用一个一般的 LDAPUserInformationFactory 预先配置进行工作,其被设计为与 LDAP v3 注册表一起进行工作。 然而,如果缺省的不合适,您可以配置 Rational Asset Manager 以使用一个自定制用户类,定制该类以扩展一般的 UserInformationFactory 类。

重要:

在安装 Rational Asset Manager 和 WebSphere Application Server 容器使用 LDAP 之前,您必须为 Rational Asset Manager 指明一个管理员,并在 LDAP 中指派一个有效用户。 在您按照以下的配置步骤进行时,您要提供用户 ID。

如果您在配置 Rational Asset Manager 的 LDAP 集成(在 Rational Asset Manager 中)之前,激活了 WebSphere Application Server 管理控制台中的 LDAP 集成,您就不能登录进入 Rational Asset Manager 中。

LDAP 连接是在 Rational Asset Manager 存储库级别,而不是在 Community 级别。 当配置一个 LDAP 连接时,每个 Community 都可以查询特定用户的 LDAP。

在配置和激活 WebSphere Application Server 管理控制台中的 LDAP 之前,您必须首先为 LDAP 集成配置 Rational Asset Manager Custom User Registry。

要配置 Rational Asset Manager 与 LDAP 集成之前,遵循以下这些步骤。

以一个管理员身份(缺省为: admin)登录进入 Rational Asset Manager Web 应用程序。

点击 Administration 页签。

在 Repository Administration 下,点击 Configuration 链接(参见图4)。

图 4. Repository Administration 屏幕

IBM Rational Asset Manager 基础安全

在 Custom User Registry 部分,选中 Use a Custom User Registry。

使用缺省类: com.ibm.ram.repository.custom.LDAPUserInformationFactory

在 Administrator ID 字段中输入 LDAP 登录 ID。 这个用户具有访问 Rational Asset Manager 的管理权限(ID 将不再是 admin)。 该用户必须已经在 LDAP 注册表中定义了。 例如: ramadmin(参见图 5)。

图 5. Custom User Registry 项

IBM Rational Asset Manager 基础安全

下一步,点击 Configure。

在 Custom User Class Configuration 页面中填入 LDAP 信息。 如果您想要一个值为空,可以输入一个空格。 否则,保留该字段为空,以转为其缺省值(按照字段定义)。

点击 Update Configuration。

在 Configuration 页面的底部点击 Save。

这里是每个字段的定义:

LDAP 服务器的 URL。 LDAP 服务器的 URL;必须以 ldap:// 或 ldaps:// 的安全连接开始。 例如: ldap://developmentserver.nam.abc.com:10345

用户的唯一名。 可以登录并访问 LDAP 注册表的用户的名称。 这需要是一个用户,其已经完成了对像以下定义的用户和组数据库搜索的 LDAP 搜索访问。 例如:

cn=us_contractor_d001,ou=applications,dc=abcglobal,dc=com

用户的密码。 之前定义的用户唯一名的密码。

用户的唯一 ID 属性。用户的 objectClass 实例的属性名称,该实例表示了唯一的用户 ID,例如登录名或电子邮件地址。 例如: uid 或 mail

用户的登录ID 属性。 用户用来登录的 objectClass 属性。用户的 Unique ID 和用户的 Login ID 属性经常是相同的。 例如: uid

用户的 Phone Number 属性。 属性 objectClass 表示了用户的来自 LDAP 的用户电话。 例如: telephonenumber

用户的 e-mail 属性。 属性 (objectClass) 表示了用户的电子邮件地址,通常是 mail。

LDAP 用户基本搜索。 您可以输入启动搜索的根路径的值,以避免搜索不包含用户对象的 LDAP 注册表部分。 例如: dc=abcglobal,dc=com

用户搜索过滤器。 搜索一个用户时所使用的模版。 %v 表示从一个输入文本字段中输入的搜索条件。 搜索将会按照如同对搜索条件增加了一个通配符一样运行。 缺省的搜索模版是建立用来查找所有人 objectClasses ,或者是邮件属性或者是名称属性与搜索条件是一样的。 例如: (uid=%v)

LDAP 组基本搜索。 用于搜索组的基本搜索。 这与前面描述的用户的基本搜索是相似的。 例如: dc=abcglobal,dc=com

组搜索过滤器。 用于搜索组的过滤器。 缺省搜索用户所输入搜索条件的任何 groupOfUniqueNames (静态组),groupOfNames(静态 LDAP 组),groupOfUrls(动态 LDAP 组),以及 group (Active Directory 定义组)。 例如: (&(cn=%v)(objectclass=groupOfUniqueNames))

图像 URL 模版。 就是通过使用用户的图像所处位置(存储于 LDAP 注册表之外的其它地方)的 URL 得到用户的图像。 例如,您可以使用缺省的:

https://<ImageServer url>/photo/${uid}.jpg

图 6 显示了完整信息的一个截屏。

图 6. 完整的配置项

IBM Rational Asset Manager 基础安全

步骤 3. 在 WebSphere Application Server 中配置单独的 LDAP 集成

现在,您已经完成了与 LDAP 集成的 Rational Asset Manager 配置,该开始配置 WebSphere Application Server 中的 LDAP 集成了。

要使用 LDAP v3 作为用户注册,您必须有一个有效的用户名(ID),用户密码,服务器主机和端口,base DN,以及如果需要的话,bind DN 和 bind password。

设置安全管理

按照以下步骤设置单独 LDAP 注册的 WebSphere Application Server 安全:

登录 Rational Asset Manager 实例的 WebSphere Application Server 管理控制台。

在管理控制台中点击 Security > Security administration > application > infrastructure。

在 User Account 存储库中,在 Available realm definitions 下,选中 Standalone LDAP registry。

点击 Configure(参见图 7)。

图 7. User Account Repository 配置

IBM Rational Asset Manager 基础安全

在 Primary administrative user name 字段中,输入一个有效的用户名。 您可以输入用户的完整 Distinguished Name (DN) 或者短名,按照 Advanced LDAP 设置区中的用户过滤器所定义的。 此 ID 是安全服务器 ID,其只用于 WebSphere Application Server 安全性,不与运行服务器的系统进程相关。 例如: ramadmin

从 Type of LDAP server 列表中,选择要使用的 LDAP 服务器。 LDAP 服务器的类型决定了 WebSphere Application Server 使用的缺省过滤器。 这些缺省过滤器更改了要定制的 Type 字段,其指明了要使用的定制过滤器。 此动作发生于您在 Advanced LDAP 设置区中点击 OK 或 Apply 之后。

从列表中,选择 Custom type,并修改 user and group filters 以使用其它 LDAP 服务器,如果需要的话。 在本例中,选择 IBM Secureway Directory Server。

在 Host 字段中,输入 LDAP 服务器的完整验证主机名。 您可以输入 Internet Protocol (IP) 地址或 Domain Name Server (DNS) 名。 例如: developmentserver.nam.abc.com

在 Port 字段中,输入 LDAP 服务器端口号。 主机名和端口号表示了 WebSphere Application Server 单元中用于此 LDAP 服务器的区域。 这样,如果在不同单元中的服务器要通过使用轻量级第三方验证(LTPA)标志进行互相沟通,这些区域必须在所有单元中准确匹配。 例如: 10345

在 Base Distinguished Name 字段中,输入 base DN。 Base DN 指明了在 LDAP 目录服务器中搜索的起始点。 您必须确保 Ignore Case 选项总是激活的。 Ignore Case 是必需的,并且不激活它可能会引起由于大小写敏感的验证问题。 该字段对于所有 LDAP 目录服务器是 必需的,除了 IBM Lotus® Domino® 目录服务器。 Base Distinguished Name 字段对于 Domino 服务器是 可选的。 例如:

dc=abcglobal,dc=com

在 Bind Distinguished Name 字段中,输入 bind DN 名称。 如果不能在 LDAP 服务器上使用 anonymous bind 获得用户和组信息,bind DN 就是必需的。 如果 LDAP 服务器被设置来使用 anonymous bind,保留此字段为空。 如果名称未被指定,应用程序服务器会匿名绑定。 例如:

cn=us_contractor_d001,ou=applications,dc=abcglobal,dc=com

在 Bind password 字段中,输入相应 bind DN 的命名。

可选: 修改 Search timeout 值。 该超时时长是发送一个搜索请求的客户端等待响应直到超时前的最大时间。

图 8 显示了目前的条目。

图 8. 完成项

IBM Rational Asset Manager 基础安全

确保 Reuse connection 选项被选中。 该选项指定了服务器必须重用 LDAP 连接。 只会在极少情况下清除此选项,如使用一个 router 发送请求到多个 LDAP 服务器,以及当 router 不提供相似性时。 对于所有其它情况,保留该选项被选中。 (参见图 9。)

验证 Ignore case for authorization 选项是否被激活。 当您激活该选项时,意味着 Java™ 2 平台,企业版(J2EE)验证是大小写敏感的。 通常,一个验证检查包括检查一个用户的完整 DN,检查是否在 LDAP 服务器中是唯一的,以及检查是否是区分大小写的。 然而,当您使用 IBM Directory 或 Sun® ONE™ 目录 LDAP 服务器时,您必需激活此选项,因为从 LDAP 服务器中获得的组信息可能会不一致。 这种不一致只会影响验证检查。 否则,该字段是可选的,并且在大小写敏感验证检查必须进行时可以被激活。 当您正在产品和 Lotus Donimo 之间使用 SSO(单点登录)时,您也可以激活 "Ignore case for authorization" 选项。 缺省为 Enabled。

可选: 如果您想要使用 LDAP 服务器的 Secure Sockets Layer 联通,选择 Secure Sockets Layer (SSL) enabled 选项。 如果您选择 SSL 激活选项,您可以选择集中管理或 "Use-specific SSL alias" 选项。

图 9. 缺省和可选设置

IBM Rational Asset Manager 基础安全

点击 Save 链接(图 10),然后点击 Save directly to the master configuration。

图 10.直接保存至主配置

IBM Rational Asset Manager 基础安全

设置 Advanced LDAP 用户注册配置

现在该开始完成配置高级 LDAP 用户注册设置的步骤:

点击 Security > Secure administration > applications > infrastructure(如果还没有的话)。

在 User account repository 下,选择 Standalone LDAP registry,并点击 Configure。

在 Additional properties下,点击 Advanced Lightweight Directory Access Protocol (LDAP) user registry settings。

您会注意到,已经弹出了所有用户和组相关过滤器的缺省值,基于 LDAP 服务器的类型,其在 "Standalone LDAP registry setting" 窗格中选择。 当安全性被激活,并且这些属性任何之一发生更改,转到在图 11 中所示的 Secure administration, applications, and infrastructure 窗格。

图 11. 安全管理,应用程序以及基础窗格

IBM Rational Asset Manager 基础安全

点击 Apply 或 OK 以验证变更。

点击 Save 链接(参见图 12),然后点击 Save 按钮。

图 12. 保存您的变更

IBM Rational Asset Manager 基础安全

点击最上方的的 Logout 链接,离开 WebSphere Application Server 管理控制台。

重新启动 WebSphere Application Server。

查看按照属性缺省值和描述的表。

属性

属性缺省值描述
使用过滤器:

(&(uid=%v)(objectclass=ePerson))

指定用来搜索用户注册的 LDAP 用户过滤器。
组过滤器:

(&(cn=%v)(|(objectclass=groupOfNames)(objectclass=groupOfUniqueNames)))

指定用来搜索组注册的 LDAP 组过滤器。
User ID 映射:

*:uid

指定 LDAP 过滤器,将一个用户的短名映射到一个 LDAP 项。 此字段使用多个 objectclass:property 对,由分号(;)区隔。
Group ID 映射:

*:cn

指定 LDAP 过滤器,将一个组的短名映射到一个 LDAP 项。 此字段使用多个 objectclass:property 对,由分号(;)区隔。
Group 成员 ID 映射:

ibm-allGroups:member;ibm-allGroups:uniqueMember

指定识别用户与组关联关系的 LDAP 过滤器。
执行嵌套组搜索:

unchecked

如果 LDAP 服务器不支持递归的服务器端的组成员搜索,选择此选项。
认定映射模式:

EXACT_DN

指定是否通过 EXACT_DN 或 CERTIFICATE_FILTER 将 X.509 认证映射到一个 LDAP 目录。 指定 CERTIFICATE_FILTER 使用指定的用于映射的认证过滤器。
认证过滤器:

(&(uid=${UniqueKey}))

过滤器用来将客户认证中的属性映射到 LDAP 中的注册项。 此过滤器的定义或结构是:

LDAP attribute=${Client certificate attribute}

例如: uid=${SubjectCN}

重要:

LDAP 集成在 WebSphere Application Server 管理控制台中被激活之后,您就不能使用 "admin" 作为用户 ID 和密码进行登录了。 在对 Custom User Registry 设置进行任何变更之后,您必须重新启动服务器。

测试配置

下一步,确保您的 WebSphere Application Server 和 Rational Asset Manager 配置正常工作。

在一个 Web 浏览器中登录 WebSphere 应用程序服务器管理控制台。

这时,通过使用您之前在 WebSphere 应用程序服务器配置一章中输入的主管理用户名(服务器用户 ID)进行登录。

点击 Log in。

如果 WebSphere 应用程序服务器被正确配置,您将看见欢迎屏幕。

点击 Logout 链接进行登出。

现在尝试 Rational Asset Manager:

登录 Rational Asset Manager。

使用您之前在 Rational Asset Manager 配置步骤中配置的 Administrator ID。

如果配置正在工作,您应当能够登录进入。

问题解决

如果不能连接到 LDAP 服务器上,WebSphere Application Server 不能启动。 因此,您将不能访问到管理控制台。 您将需要按照以下步骤手动编辑 security.xml 文件:

定位到您的 WebSphere Application Server 存档:

<WAS Base>profilesAppSrv01bin/${wasBaseDir}/profiles/default/config/cells/${nodeName}Node01Cell/

例如:

C:ProgramFilesIBMSDP70runtimesbase_v61profilesAppSrv01configcellsdevelopmentNode01Cell

编辑 security.xml 文件,如下面所显示列出的代码。

如果您之前已经激活了安全,并有一个定制用户注册,将文本(粗体)更改为 activeUserRegistry="CustomUserRegistry_1"。

否则,如果您之前没有激活安全,将文本(粗体)更改为 enabled="false"。

代码清单. 编辑 security.xml 文件

<security:Security
xmi:version="2.0"xmlns:xmi="http://www.omg.org/XMI"
xmlns:orb.securityprotocol=
"http://www.ibm.com/websphere/appserver/schemas/5.0/orb.securityprotocol.xmi"
xmlns:security=
"http://www.ibm.com/websphere/appserver/schemas/5.0/security.xmi"
xmi:id="Security_1"
useLocalSecurityServer="true"
useDomainQualifiedUserNames="false"
enabled="true" cacheTimeout="600"
issuePermissionWarning="true"
activeProtocol="BOTH"
enforceJava2Security="false"
enforceFineGrainedJCASecurity="false"
activeAuthMechanism="SWAMAuthentication_1"
activeUserRegistry="LDAPUserRegistry_1"
defaultSSLSettings="SSLConfig_1">

Save 文件。

重新启动 WebSphere Application Server。

在一个 Web 浏览器中登录管理控制台。 这时,不要使用 LDAP 用户 ID 进行登录。

点击 Log in。

修复您的配置的问题,并且重新启动 WebSphere Application Server。

第 4 步. 增加 LDAP 用户和用户组到 Rational Asset Manager 社区

您差不多完成了。 到目前为止,您已经完成了正确配置 Rational Asset Manager 使用 LDAP 进行用户验证和用户信息获取的必要步骤了。 Community 管理员 现在可以完成其余的任务:

增加用户

将用户组绑定到 LDAP 中的组

配置和分派权限

Tags:IBM Rational Asset

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