扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
引言
Web 服务器通常使用数字证书为使用 HTTPS(而不是 HTTP 协议)的 Web 客户机进行服务器身份验证,以访问该服务器上运行的应用程序。不过,对于客户机身份验证,数字证书的方式并不经常使用;更为常见的是,客户机使用用户名和密码之类的元素进行身份验证。 从服务器的角度而言,这两个身份验证方法都可以,但通过 HTTPS 使用用户名和密码进行身份验证仍然有潜在的危险,因为密码可能会丢失、被盗或以其他方式遭到破坏。使用证书的客户机身份验证可以帮助克服凭据被破坏的问题,从而让您对应用程序的安全性更加有信心。
本文描述对使用数字证书进行客户机身份验证的需求以及对在 IBM WebSphere Application Server Community Edition 中部署的 Web 应用程序中进行身份验证和授权决策的需求。本文将重点讨论管理控制台提供的私钥和证书管理功能,并将提供 Web 应用程序示例,以演示如何通过使用数字证书的客户机身份验证实现 Web 应用程序安全性的声明和编程实现。
本文需要使用 WebSphere Application Server Community Edition Version 1.0.1 或更高版本。
|
关于数字证书
数字证书最常见的用途是验证发送消息的用户是其声明的用户,并向接收方提供对应答进行编码的方法。此功能用于在 HTTPS 协议(基于 SSL)上对 Web 服务器和客户机进行身份验证。希望发送加密消息的实体将创建公钥-私钥对,并从证书颁发机构(Certificate Authority,CA)申请数字证书。CA 发出经过加密的数字证书,其中包含应用程序的公钥和各种其他身份标识信息。CA 通过公开输出的方式提供自己的公钥。使用最广泛的数字证书标准是 X.509。
|
使用管理控制台
管理控制台提供了一种方便而友好的方式来管理 WebSphere Application Server Community Edition(以下称为 Community Edition)的诸多方面。管理控制台的功能将不断改进和发展,目前提供了多个 Portlet 来执行各种管理任务,如 KeyStore、Web Server、Applications 和 Security Realms Portlet,我们将在本文中使用这些 Portlet。管理控制台还提供了让管理员查看和监视服务器状态的 Portlet,如 Information、JVM 和 DB Info Portlet。启动 Community Edition 后,就可以通过 http://localhost:8080/console 访问管理控制台。默认的登录名为 system
,其密码为 manager
。
KeyStore Portlet
管理控制台中的 KeyStore Portlet JKS 类型 Java™ 密钥存储库文件进行操作,此文件在 Community Edition 中预先配置为指向 server 目录下的 var/security/keystore 文件。 此 Portlet 允许您进行以下操作:
这些操作是密钥管理不可或缺的一部分。(Community Edition 用户并不需要 keytool 一类的密钥管理工具。)密钥存储库中的私钥和受信任证书可以用于为 Web 容器配置 HTTPS 侦听器。在本文中,我们将使用 KeyStore Portlet 来进行以下工作:
要在 Community Edition 中启动 KeyStore Portlet,请在 Console Navigation 部分的 Security 标题下选择 Keystore 链接(图 1)。要查看任意私钥或受信任证书条目的详细信息,请单击对应别名提供的
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者