4.2. 创建加载默认 SSL 上下文的客户端示例
以下示例演示了以编程方式注册 WildFlyElytronClientDefaultSSLContextProvider 提供程序,并使用 SSLContext.getDefault () 方法获取 Elytron 客户端初始化的 SSLContext。该示例使用静态客户端配置作为提供程序的参数提供。
4.2.1. 为 JBoss EAP 客户端创建 Maven 项目 复制链接链接已复制到粘贴板!
要为部署到 JBoss EAP 的应用创建客户端,请创建一个具有所需依赖项和目录结构的 Maven 项目。
先决条件
- 您已安装了 Maven。如需更多信息,请参阅 下载 Apache Maven。
流程
使用
mvn命令设置 Maven 项目。该命令创建项目的目录结构以及pom.xml配置文件。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 导航到应用程序根目录。
cd client-ssl-context
$ cd client-ssl-contextCopy to Clipboard Copied! Toggle word wrap Toggle overflow 将生成的
pom.xml文件的内容替换为以下文本:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 删除
src/test目录。rm -rf src/test/
$ rm -rf src/test/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
在应用程序根目录中,输入以下命令:
mvn install
$ mvn installCopy to Clipboard Copied! Toggle word wrap Toggle overflow 您会看到类似如下的输出:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.2. 创建载入默认 SSLContext的客户端 复制链接链接已复制到粘贴板!
为部署到 JBoss EAP 的应用创建一个客户端,以使用 方法加载 SSLContext。
SSLContext.getDefault ()
在此过程中,<application_home> 指向包含应用程序 pom.xml 配置文件的目录。
先决条件
通过双向 TLS,您已保护部署到 JBoss EAP 的应用。
要做到这一点,请按照以下步骤执行:
您已创建了一个 Maven 项目。
如需更多信息,请参阅为 JBoss EAP 客户端创建 Maven 项目。
- JBoss EAP 正在运行。
流程
创建一个用于存储 Java 文件的目录。
mkdir -p <application_home>/src/main/java/com/example/client
$ mkdir -p <application_home>/src/main/java/com/example/clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow 前往新目录。
cd <application_home>/src/main/java/com/example/client
$ cd <application_home>/src/main/java/com/example/clientCopy to Clipboard Copied! Toggle word wrap Toggle overflow 使用以下内容创建 Java 文件
App.java:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 <
application_home> /src目录中创建名为 "wildfly-config-two-way-tls.xml" 的客户端配置文件。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 holder 值替换为实际路径:
- ${path_to_client_truststore}
- ${path_to_client_keystore}
验证
- 进入 < application_home> 目录。
运行应用程序。
mvn compile exec:java
$ mvn compile exec:javaCopy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
INFO: ELY00001: WildFly Elytron version 2.0.0.Final-redhat-00001 SSL Default SSLContext is: WildFlyElytronClientDefaultSSLContextProvider
INFO: ELY00001: WildFly Elytron version 2.0.0.Final-redhat-00001 SSL Default SSLContext is: WildFlyElytronClientDefaultSSLContextProviderCopy to Clipboard Copied! Toggle word wrap Toggle overflow