热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

在LotusQuickrforDomino环境中使用TivoliAccessManager

简介IBMLotusQuickr是一款团队协作软件,它帮助您共享内容、与团队进行协作并提高联机工作的速度。Quickr安全管理解决方案可以借助IBMTivoliAccessManager—WebSEAL组件用于实现反向代理,反向代理充当门户和其他Web应用程序的联系人的联合单

简介 IBM Lotus Quickr 是一款团队协作软件,它帮助您共享内容、与团队进行协作并提高联机工作的速度。 Quickr 安全管理解决方案可以借助 IBM Tivoli Access Manager — WebSEAL 组件用于实现反向代理,反向代理充当门户和其他 Web 应用程序的联系人的联合单

简介

IBM Lotus Quickr 是一款团队协作软件,它帮助您共享内容、与团队进行协作并提高联机工作的速度。

Quickr 安全管理解决方案可以借助 IBM Tivoli Access Manager — WebSEAL 组件用于实现反向代理,反向代理充当门户和其他 Web 应用程序的联系人的联合单一登录点。使用上述反向代理,由于身份验证逻辑存在于 Tivoli Access Manager WebSEAL 层中,可以在将来支持更复杂的身份验证机制。

IBM Tivoli Access Manager 是用于电子商务和分布式应用程序的功能强大且安全的集中策略管理解决方案。IBM Tivoli Access Manager WebSEAL 是高性能、多线程的 Web 服务器, 它将细粒度的安全策略应用到 Tivoli Access Manager 受保护的 Web 对象空间。WebSEAL 能提供单一注册解决方案,并将后端 Web 应用程序服务器资源合并到其安全策略中。


回页首

IBM Tivoli Access Manager 与 WebSEAL

IBM Tivoli Access Manager 是完整的授权和网络安全策略管理解决方案,该解决方案对地理上分散在内部网和外部网上的资源提供超强的端到端保护。

其核心,Tivoli Access Manager 提供:

  1. 认证框架

    Tivoli Access Manager 提供范围很广的内置认证程序,并支持外部认证程序。

  2. 授权框架

    通过 Tivoli Access Manager 授权 API 访问的 Tivoli Access Manager 授权服务,对位于安全域中的受保护资源的请求提供许可和拒绝决策。

IBM Tivoli Access Manager WebSEAL 是负责管理并保护基于 Web 的信息和资源的资源管理器。WebSEAL 通常作为逆向 Web 代理,从 Web 浏览器接收 HTTP / HTTPS 请求并交付来自其自己的 Web 服务器或来自联结的后端 Web 应用程序服务器的内容。通过 WebSEAL 的请求由 Tivoli Access Manager 授权服务评估,以确定是否授权用户访问所请求的资源。

WebSEAL 提供以下功能:

  • 支持多种认证方法。
  • 接受 HTTP 和 HTTPS 请求。
  • 通过 WebSEAL 联结技术集成和保护后端服务器资源。
  • 管理用于本地和后端服务器 Web 空间的细粒度访问控制。
  • 作为逆向 Web 代理执行 - 对于客户机,WebSEAL 可作为 Web 服务器,而对于正受其保护的联结后端服务器,WebSEAL 可作为 Web 浏览器。
  • 提供单一注册功能。
图 1. 使用 WebSEAL 保护 Web 空间


回页首

使用 WebSEAL 保护 Quickr 空间

WebSEAL 在安全域中实施安全性时,每个 Quickr 客户机必须提供其标识证明。接着,Tivoli Access Manager 安全策略确定是否许可客户机在所请求资源上执行操作。因为对安全域中每个 Quickr 资源的访问由 WebSEAL 控制,所以 WebSEAL 的认证和授权要求可提供全面的网络安全性。

在 Tivoli Access Manager 授权模型中,授权策略是独立于用户认证所用的机制而实施的。用户可以使用公用/专用密钥、安全密钥,也可以使用顾客定义的机制认证其身份。认证过程的一部分涉及凭证(描述客户机的身份)的创建。某个授权服务做出的授权决策是以用户凭证为基础的。

授权过程由以下基本组件组成:

  • 资源管理器负责在授予权限时实现所请求的操作。
  • 授权服务对请求执行决策操作。

下图阐述了完整的授权过程:

图 2. Tivoli Access Manager 授权过程

认证是一种确定尝试登录到安全域的单个进程或实体的方法。当服务器和客户机都要求认证时,该交换过程就是所谓的相互认证。

图 3. 相互认证


回页首

在 WebSEAL 集成环境中配置 SSL

WebSEAL 服务器支持以下两种 SSL 连接:

  • 来自客户机的 HTTPS 访问请求
  • 后端服务器的 SSL 联结

如下图所示:

图 4. WebSEAL 服务器的 SSL 联结

另外,Tivoli Access Manager 支持前端 WebSEAL 服务器和后端 WebSEAL 服务器之间的 SSL 联结。

为来自客户端的 HTTPS 请求配置 WebSEAL

客户端证书认证必须发生在安全套接字层(SSL)连接上。在证书认证过程之前建立 SSL 连接。可以在客户机尝试在 HTTP 上访问资源时建立 SSL 连接。当资源不需要认证访问时,该客户机将与 WebSEAL 服务器协商 SSL 会话。当客户机和服务器(WebSEAL)检查彼此的证书并接受签名权限的有效性时,建立 SSL 会话。

为了能够在新的 WebSEAL 服务器上建立 SSL 会话,WebSEAL 包含自签署的测试服务器证书。WebSEAL 可以将自签署的证书提供给客户机。如果客户机接受该证书,则建立 SSL 会话。此测试证书不适用于由 WebSEAL 服务器永久使用。虽然此测试证书允许 WebSEAL 响应启用 SSL 的浏览器请求,但不能由浏览器验证它。这是因为浏览器未包含适当的根 CA 证书 -- 就是当浏览器接收到任何自签署的证书,但对该证书不存在根 CA 证书的情况。因为此缺省证书的专用密钥包含在每个 WebSEAL 分发中,所以此证书不能提供真正的安全通信。

要确保通过 SSL 的安全通信,WebSEAL 管理员必须从信任的认证中心(CA)获得唯一的站点服务器证书。 可以使用 GSKit 中的 iKeyman 应用程序生成将发送到 CA 的证书请求。还可以使用 iKeyman 来安装和标注新的站点证书。

使用 WebSEAL 配置文件的 [ssl] 节中的 webseal-cert-keyfile-label

通过设置配置文件条目,可以实现以下控制:

  • 启用/禁用 HTTPS 访问
  • 设置 HTTPS 访问端口
  • 限制来自特定 SSL 版本的连接
  • 设置 HTTP/HTTPS 的通讯超时参数
  • 设置证书撤销列表(CRL)

为后端服务器配置 SSL 类型的联结

SSL 联结功能是在 TCP 连接的 WebSEAL 联结的基础上完成的,它的附加功能是加密所有 WebSEAL 和后端服务器间的通信。SSL 联结允许安全的端到端的浏览器到应用程序的事务。可以使用 SSL 同时保护从客户机到 WebSEAL 以及从 WebSEAL 到后端服务器的通信。使用 SSL 联结时,后端服务器必须启用 HTTPS。

当客户机请求后端服务器上的资源时,WebSEAL 作为安全服务器,将代表客户机执行请求。SSL 协议指定了在对后端服务器提出请求时,服务器必须使用服务器端证书提供其身份证明。当 WebSEAL 从后端服务器接收到此证书时,它必须通过将证书与证书数据库中根 CA 证书列表对照来验证真实性。

Tivoli Access Manager 使用 SSL 的 IBM Global Security Kit(GSKit)实现。必须使用 GSKit iKeyman应用程序来添加 CA 的根证书,该 CA 签署了 WebSEAL 证书密钥文件(pdsvr.kdb)的后端服务器证书。

SSL 联结示例:

server task web1-webseald-cruz create -t ssl -h sales.tivoli.com /sales

注:-t ssl 选项规定了缺省端口 443。

WebSEAL 至 WebSEAL 的 SSL 联结

Tivoli Access Manager 支持前端 WebSEAL 服务器和后端 WebSEAL 服务器之间的 SSL 联结。使用带 -C 选项的 create 命令可通过 SSL 联结两个 WebSEAL 服务器并提供相互认证。例如:

pdadmin> server task web1-webseald-cruz create -t ssl -C -h serverA /jctA

相互认证发生在以下两个前提下:

  • SSL 协议允许后端 WebSEAL 服务器通过其服务器证书向前端 WebSEAL 服务器认证。
  • 在基本认证(BA)头中,-C 选项使前端 WebSEAL 服务器可以将其身份信息传递到后端 WebSEAL 服务器。

此外,-C 选项可以启用 -c 选项提供的单一注册功能。 -c 选项允许将特定于 Tivoli Access Manager 的客户机身份和组成员信息,放置到向后端 WebSEAL 服务器请求的 HTTP 头中。头参数包括:iv-useriv-groupsiv-creds

WebSEAL 至 WebSEAL 联结必须使用在以下环境中:

  • 联结为 -t ssl-t sslproxy 联结类型。
  • 两个 WebSEAL 服务器必须共享公共 LDAP 注册表。它允许后端 WebSEAL 服务器认证前端 WebSEAL 服务器的标识信息。
  • 如果 WebSEAL 到 WebSEAL 联结和后端应用程序服务器联结都使用 -j 联结选项(对联结 COOKIE),则这两种 WebSEAL 服务器各自创建的两种联结 COOKIE 之间可能会发生命名冲突。为了防止此冲突,您必须配置中间 WebSEAL 服务器唯一标识其联结 COOKIE。仅在中间 WebSEAL 服务器上,将 WebSEAL 配置文件的 [script-filtering] 节中的 hostname-junction-COOKIE 参数设置为“yes”(缺省值为“no”)。


回页首

WebSEAL 环境下 Lotus Quickr 与 Lotus Sametime、Lotus Connections 集成

在 Lotus Quickr 解决方案中,Lotus Quickr 通常作为集成服务的一部分,而不是单一的应用程序为用户提供服务。同时 IBM Tivoli Access Manager 能对后台的多个Web应用程序服务器提供统一的认证、授权和单点登录。本章描述了在 Lotus Quickr、Lotus Connections 以及 Lotus Sametime 这一典型的客户环境中,WebSEAL 与 Web 服务器集成的场景。

图 5. WebSEAL 与 Lotus Quickr, Lotus Sametime, Lotus Connections 集成的拓扑结构

集成后我们可以在 Lotus Quickr 服务器上实现以下功能:

  • Sametime 服务器的在线感知、聊天、在线会议功能。
  • Connections 服务器的 Business Card 功能。
  • 在 Connections 服务器上可以把 activities 的 entry 附件放到 Quickr 服务器的场所里。
  • 在 Connections 服务器上可以再 Community 里创建 Quickr 的标准场所和 WIKI。


回页首

WebSEAL 与 Lotus Quickr 集成实例

  1. 搭建一个 Tivoli Access Manager 服务器 , 并使用一个 LDAP 服务器提供目录服务,比如连接 IBM Directory Server。
  2. 搭建一个基于 Lotus Domino 的应用程序 Lotus Quickr,并与 TAM 服务器使用同一个 LDAP 服务器提供目录服务。
  3. 从单独的一台 WebSphere Application 服务器上产生一个 LTPA key file 并导出用来实现 Tivoli Access Manager 与 domino 的产品之间的 SSO。
    1. 通过浏览器访问一台 WebSphere Application Server 服务器,输入管理员和密码,例如:http://was.yourcompany.com:9090/admin
    2. 在左侧的导航面板中单击安全性 > 认证机制 > LTPA。
    3. 在密钥文件名字段中,输入密钥存储文件的全路径。文件需要写许可权。
    4. 单击导出密钥。文件是用 LTPA 密钥创建的。
    5. 保存此密钥。
  4. 在 Tivoli Access Manager 服务器上为 Lotus Quickr 服务器创建节点 Junction。
    1. 在 Tivoli Access Manager 服务器上启动 pdadmin 工具:开始 > 程序 > IBM Tivoli Access Manger > 管理员命令提示行。
    2. 使用 login 命令登陆服务器 pdadmin > Login。输入服务器的管理员和密码后就可以开始注册了。
    3. 使用从 WebSphere Application 服务器上产生的 LTPA 密钥为 Lotus Quickr 服务器创建 Junction,在命令行输入命令:

      pdadmin> server task default-webseald-[servername] create -t tcp 
          -h [Lotus Quickr hostname] -p 80 -i -j -A –F [path to LTPA key] 
          -Z [LTPA key password] /junction

      例如:

      pdadmin> server task default-webseald-TAM.yourcompany.com create -t tcp 
          -h quickr.yourcompany.com -p 80 -i -j -A -F c:\sso -Z password /quickr

    4. 导入常用的用户到 Tivoli Access Manager 服务器中,所有的用户都来源于 LDAP 服务器,在命令行输入:

      pdadmin > user import [-gsouser]  

      例如:

      pdadmin> user import -gsouser manager10 
          "cn=manager ,ou=managers,ou=users,o=qdsvt,dc=yourcompany,dc=com"

    5. 使所有导入的用户 Tivoli Access Manager 服务器中生效,在命令行输入 :

      pdadmin> user modify  account-valid {yes|no}

      例如:

      pdadmin> user modify manager account-valid yes

  5. 配置 Lotus Domino 应用程序服务器实现与 Tivoli Access Manager 服务器之间的 SSO。
    1. 在 Lotus Domino 应用程序服务器上创建 Web SSO 配置文档 , Web SSO 配置文档是存储在 Domino 目录中的网络域范围内的配置文档。该文档(应复制到参与一次登录网络域的所有服务器)将针对参与服务器和管理员进行加密,并包含一个共享密钥,以供服务器用来验证用户证书。
    2. 完成文档余下部分,如下所示:

      表 1. Web SSO 配置文档

      操作
      配置名称 保持默认名字 LtpaToken
      组织 不填写
      DNS网络域 (必须填写)输入生成的令牌所属的 DNS 网络域(如 yourcompany.com)。启用一次登录的所有服务器必须属于同一个 DNS 网络域。
      Domino服务器名称 输入将参与一次登录的服务器的名称(例如,quickr/ibm,sametime/ibm)。此文档将针对文档创建者、“所有者”和“管理者”域的成员以及“Domino 服务器名称”域中指定的服务器进行加密。
      此域中不允许出现群组、通配符和 WebSphere 服务器的名称。只有 Domino 服务器才能作为参与服务器在“服务器名称”域中列出。
      注意 该域大小应不超过 64K。当达到该限制时(例如,当输入了几百个服务器的名称时),将出现错误消息。如果达到了此限制,则建议创建多个 Web SSO 文档。
      到期时间(分钟) 指定令牌有效的时间段(分钟)。此时间段从令牌发布的时间开始算起。令牌只在指定的分钟数内有效,也就是说其到期时间不基于闲置时间。缺省值为 30 分钟。
    3. 在“Web SSO 配置”文档中,单击“密钥”。选择“引入 WebSphere LTPA 密钥”。浏览和选择 WebSphere LTPA 引出文件 , 输入口令(在 WebSphere 中生成密钥时指定)。
    4. 使用 Domino Administrator, 从“文件”菜单下选择“应用程序”> “新建”,选择 Quickr 服务器的名字和新数据库的名字 domcfg.nsf,再选择 Quickr 服务器作为数据库的模板服务器,勾选“显示高级模板”,选择模板“Domino Web Server Configuration”,点确定创建 domcfg.nsf 数据库,创建完成后打开此数据库,选在“添加映射”按钮,在目标数据库名字域中填写“LotusQuickr/resources.nsf”,在目标窗体域中填写“QuickPlaceLoginForm”, 保存此文档并关闭 domcfg.nsf 数据库。
    5. 重新启动 Quickr 服务器。
  6. 确认配置成果:通过 Tivoli Access Manager 服务器访问 Lotus Quickr 服务器:https://TAM.yourcompany.com/quickr/lotusquickr,使用 Tivoli Access Manager 服务器导入的用户和密码,授权通过后 Tivoli Access Manager 服务器与 Lotus Quickr 服务器实现 SSO。

推荐阅读
  • H5技术实现经典游戏《贪吃蛇》
    本文将分享一个使用HTML5技术实现的经典小游戏——《贪吃蛇》。通过H5技术,我们将探讨如何构建这款游戏的两种主要玩法:积分闯关和无尽模式。 ... [详细]
  • JavaScript 跨域解决方案详解
    本文详细介绍了JavaScript在不同域之间进行数据传输或通信的技术,包括使用JSONP、修改document.domain、利用window.name以及HTML5的postMessage方法等跨域解决方案。 ... [详细]
  • 搭建个人博客:WordPress安装详解
    计划建立个人博客来分享生活与工作的见解和经验,选择WordPress是因为它专为博客设计,功能强大且易于使用。 ... [详细]
  • Docker安全策略与管理
    本文探讨了Docker的安全挑战、核心安全特性及其管理策略,旨在帮助读者深入理解Docker安全机制,并提供实用的安全管理建议。 ... [详细]
  • 调试利器SSH隧道
    在开发微信公众号或小程序的时候,由于微信平台规则的限制,部分接口需要通过线上域名才能正常访问。但我们一般都会在本地开发,因为这能快速的看到 ... [详细]
  • 从理想主义者的内心深处萌发的技术信仰,推动了云原生技术在全球范围内的快速发展。本文将带你深入了解阿里巴巴在开源领域的贡献与成就。 ... [详细]
  • 精选10款Python框架助力并行与分布式机器学习
    随着神经网络模型的不断深化和复杂化,训练这些模型变得愈发具有挑战性,不仅需要处理大量的权重,还必须克服内存限制等问题。本文将介绍10款优秀的Python框架,帮助开发者高效地实现分布式和并行化的深度学习模型训练。 ... [详细]
  • 本文介绍了如何利用X_CORBA实现远程对象调用,并通过多个示例程序展示了其功能与应用,包括基础的Hello World示例、文件传输工具以及一个完整的聊天系统。 ... [详细]
  • 深入解析:存储技术的演变与发展
    本文探讨了从单机文件系统到分布式文件系统的存储技术发展过程,详细解释了各种存储模型及其特点。 ... [详细]
  • Redis:缓存与内存数据库详解
    本文介绍了数据库的基本分类,重点探讨了关系型与非关系型数据库的区别,并详细解析了Redis作为非关系型数据库的特点、工作模式、优点及持久化机制。 ... [详细]
  • 对象存储与块存储、文件存储等对比
    看到一篇文档,讲对象存储,好奇,搜索文章,摘抄,学习记录!背景:传统存储在面对海量非结构化数据时,在存储、分享与容灾上面临很大的挑战,主要表现在以下几个方面:传统存储并非为非结 ... [详细]
  • 黑客松获奖名单出炉、NFT艺术周圆满落幕 |Oasis周报 ... [详细]
  • 本文详细记录了 MIT 6.824 课程中 MapReduce 实验的开发过程,包括环境搭建、实验步骤和具体实现方法。 ... [详细]
  • 8个IDC大数据基础定义解析丨IDC
    本文针对IDC数据行业相关名词术语进行解析,分为4组相关概念,希望大家读完 ... [详细]
  • 近年来,区块链技术备受关注,其中比特币(Bitcoin)功不可没。尽管数字货币的概念早在上个世纪就被提出,但直到比特币的诞生,这一概念才真正落地生根。本文将详细探讨比特币、以太坊和超级账本(Hyperledger)的核心技术和应用场景。 ... [详细]
author-avatar
rui1大姑娘_939
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有