我正在尝试创建自己的实现javax.net.ssl.SSLSocketFactory,以便捕获所有HTTP/SSL请求,由第三方库发送,并记录它们.这就是在该库中调用工厂的方式(它是commons-httpclient):
import javax.net.ssl.SSLSocketFactory;
// ...
return SSLSocketFactory.getDefault().createSocket(host, port);
Run Code Online (Sandbox Code Playgroud)
目前使用的实现是com.sun.net.ssl.internal.ssl.SSLSocketFactoryImpl.如何将其更改为我自己的自定义类?
来自http://download.oracle.com/javase/1.4.2/docs/api/javax/net/ssl/SSLSocketFactory.html:
(...)可以通过将"ssl.SocketFactory.provider"安全属性(在Java安全属性文件中)的值设置为所需的类来更改默认实现.
有关定义自己的安全策略文件的更多信息,请访问http://download.oracle.com/javase/1.4.2/docs/guide/security/PolicyFiles.html.
您似乎只能在JSM级别更改该属性,而不能在每个项目中更改该属性.在Windows中,您可以在Java\jre6\lib\security\java.security中找到该文件.
| 归档时间: |
|
| 查看次数: |
11919 次 |
| 最近记录: |