- 浏览: 125539 次
- 性别:
- 来自: 南京
-
文章分类
- 全部博客 (97)
- Jquery (3)
- Oracle (11)
- JS (12)
- Struts2 (4)
- java (17)
- 课程 (1)
- Jboss (0)
- EJB (0)
- MAVEN (1)
- Design Pattern (0)
- css (2)
- axis1.4 (2)
- hessian (1)
- big data (1)
- Tomcat (3)
- redis (1)
- OVAL validate (1)
- express (1)
- eclipse (1)
- name node 无法启动 (1)
- hadoop (2)
- mysql (1)
- spring (1)
- sbt (1)
- angular (1)
- cas (1)
- JSSDK (1)
- 微信支付 (1)
- 小程序 (1)
- mybatis (1)
- jxta (1)
- idea (2)
- lay ui (1)
- sofa (1)
最新评论
-
duanwenping520:
这也太省事了把!
sj22
最近测试 Https 连接,遇到了些问题。
1. Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
对方使用的是JDK 1.8,他们默认的是TLSV1.2, 我使用的是1.7, 我这边是1.0 的。
造成一直认证失败,开始以为要导入证书。设置请求默认1.2,就可以了。
System.setProperty("https.protocols", "TLSv1.1,TLSv1.2");
System.setProperty("jsse.enableSNIExtension", "false");
2.授权 401. 加密采用 Basic 认证,java自带的Base64 有些bug,网上找了个Base 64.
URL url = new URL("https://");
URLConnection uc = url.openConnection();
HttpURLConnection conn = (HttpURLConnection) uc;
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestMethod("POST");
String user_pass = username + ":" + password;
String encoded = Base64.encode(user_pass.getBytes());
conn.addRequestProperty("Accept", "application/xml");
conn.setRequestProperty("Content-Type", "application/xml");
conn.setRequestProperty("Authorization", "Basic " + encoded);
3. Https 证书导入,实际上两步骤,已经可以请求成功了,为了测试还是导入了证书。
Key tool 导入cert file to cacerts
C:\Program Files\Java\jdk1.7.0_80\jre\bin>keytool -import -keystore cacerts -storepass changeit -keypass changeit -alias e-xx.com -file D:\cert\staging.gate.crt
C:\Program Files\Java\jdk1.7.0_80\jre\bin>keytool -list -v -alias e-xx.com -keystore cacerts -storepass changeit
4.httpClient 忽略cert file, 指定 TLSV1.2,不设置系统参数,enableSNIExtension,因为会影响到其他ssl链接。
见附件。
1. Caused by: javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated
对方使用的是JDK 1.8,他们默认的是TLSV1.2, 我使用的是1.7, 我这边是1.0 的。
造成一直认证失败,开始以为要导入证书。设置请求默认1.2,就可以了。
System.setProperty("https.protocols", "TLSv1.1,TLSv1.2");
System.setProperty("jsse.enableSNIExtension", "false");
2.授权 401. 加密采用 Basic 认证,java自带的Base64 有些bug,网上找了个Base 64.
URL url = new URL("https://");
URLConnection uc = url.openConnection();
HttpURLConnection conn = (HttpURLConnection) uc;
conn.setDoInput(true);
conn.setDoOutput(true);
conn.setRequestMethod("POST");
String user_pass = username + ":" + password;
String encoded = Base64.encode(user_pass.getBytes());
conn.addRequestProperty("Accept", "application/xml");
conn.setRequestProperty("Content-Type", "application/xml");
conn.setRequestProperty("Authorization", "Basic " + encoded);
3. Https 证书导入,实际上两步骤,已经可以请求成功了,为了测试还是导入了证书。
Key tool 导入cert file to cacerts
C:\Program Files\Java\jdk1.7.0_80\jre\bin>keytool -import -keystore cacerts -storepass changeit -keypass changeit -alias e-xx.com -file D:\cert\staging.gate.crt
C:\Program Files\Java\jdk1.7.0_80\jre\bin>keytool -list -v -alias e-xx.com -keystore cacerts -storepass changeit
4.httpClient 忽略cert file, 指定 TLSV1.2,不设置系统参数,enableSNIExtension,因为会影响到其他ssl链接。
见附件。
- HttpClient_and_HttpsUrl.rar (3.2 KB)
- 下载次数: 1
发表评论
-
微信 h5 分享
2019-09-30 09:53 258微信 h5分享 1.前端jsp 需要去除追加字符,传到后端进行 ... -
url 二级域名匹配
2016-10-14 16:32 590private static void urlMatche(S ... -
unicdoe 转码
2015-12-04 16:15 503开始以为是乱码,我日。 http://www.faqs.org ... -
eclipse中取消show in Breadcrumb方法
2015-11-23 18:01 1678eclipse中取消show in Breadcrumb方法 ... -
sqserver order by 与java compareTo ,xml sting getBytes乱码
2015-08-04 23:10 6021.sqlsever orderby 顺序,取出list, 然 ... -
手动构建xml xls 日期 datetime number type
2014-10-28 19:07 1397http://ewbi.blogs.com/develops/ ... -
压缩 inputstream to zipoutputstream to bytearrayoutputstream
2014-10-21 20:06 1581http://stackoverflow.com/questi ... -
JMX demo
2014-02-07 11:05 946http://docs.oracle.com/javase/6 ... -
xsl dom 一个xml 引用另一个xml的某些节点
2014-02-07 11:07 660http://www.coderanch.com/t/1263 ... -
excel 导入导出
2013-03-20 21:35 831else if (type.equalsIgnoreCase( ... -
servlet 线程安全 application.setattribute,加上synchronized
2013-03-20 20:35 1670http://www.alixixi.com/Dev/Web/ ... -
sj22
2013-01-09 21:37 1020Organizations 字段名 含义 类型 缺省值 备 ... -
xerces jar和dom,jaxb解析冲突的解决方法
2012-10-12 22:41 32651.采用dom解析的时候,遇到Xerces.jar,会出现 E ... -
jaxb style
2012-10-12 11:55 719http://www.coderanch.com/t/4952 ... -
jsp out.print 乱码
2014-02-07 11:07 1311response.setContentType( " ... -
定时器使用Timer,timerTask
2012-02-01 17:14 8461.每隔10分钟触发 web.xml <listener ...
相关推荐
7. **安全性考虑**:BasicAuth的缺点在于明文传输密码,因此通常需要配合HTTPS使用。此外,还应考虑凭证的存储和加密方式,以提高安全性。 8. **错误处理和异常捕获**:在实现过程中,需要对可能出现的错误和异常...
本文将深入探讨CXF安全访问的一个重要方面:HTTP基本认证(Http Basic Auth)。这是一种简单但有效的身份验证机制,适用于对Web服务进行安全控制。 HTTP基本认证是基于HTTP协议的,它在请求头中包含一个Base64编码...
Express的`basicAuth`中间件使得在Express应用中集成这一过程变得简单。下面我们将详细讲解如何使用`basicAuth`以及如何自定义验证逻辑。 1. **安装express-basic-auth**: 在使用`basicAuth`之前,你需要先安装...
const basicAuth = require('express-basic-auth'); ``` 2. 创建认证用户列表: ```javascript const users = [ { username: 'admin', password: 'password123' }, // 可以添加更多用户 ]; ``` 3. 配置并使用...
**前端开源库-lws-basic-auth** 前端开源库`lws-basic-auth`是一个专门用于实现基本身份验证(Basic Authentication)的轻量级解决方案。在Web开发中,安全性是至关重要的,尤其是当涉及到用户数据和服务器资源时。...
from flask_basicauth import BasicAuth app = Flask(__name__) basic_auth = BasicAuth(app) # 设置用户名和密码 basic_auth.init_app(username='myuser', password='mypassword') ``` 3. **保护视图**:...
需要注意的是,在实际生产环境中使用Basic Auth时,还需要考虑其他的安全措施,例如HTTPS协议的使用,以确保传输过程中的安全性。 希望本文能够帮助您更好地理解和掌握Python中Basic Auth的使用方法。如果您有任何...
http-server-basicauth-ssl:命令行http服务器 http-server-basicauth-ssl是基于以下内容的简单,零配置命令行安全化Http服务器: HTTP服务器 基本认证 SSL协议 主要目的是拥有与http-server相同的有用工具,但具有...
在本文中,我们将深入探讨如何使用Spring Boot和Spring Security实现基于基本身份验证(Basic ...在`spring-boot-basic-auth-master`这个项目中,你应该能够找到更详细的配置和示例代码,帮助你更好地理解整个流程。
1. 为了提高安全性,建议将Basic Auth与HTTPS结合使用,以防止用户名和密码在传输过程中被窃取。 2. `htpasswd`命令生成的密码文件应妥善保管,避免未经授权的访问。 3. 如果需要添加多个用户,只需再次运行`...
"BasicAuth:内置在Node中的基本用户身份验证API" 指的是在Node.js环境中,使用一种名为Basic Authentication的简单用户身份验证机制。Basic Authentication是一种基于HTTP协议的身份验证方法,它将用户名和密码编码...
要使用基本认证访问API,客户端需要在每个请求中添加`Authorization`头部,其值的格式为`Basic base64-encoded(username:password)`。首先,将用户名和密码连接成`username:password`字符串,然后对这个字符串进行...
const basicAuth = require('express-basic-auth'); const users = [{ username: '用户', password: '通过' }]; const auth = basicAuth({ users, unauthorizedResponse: '无效的用户名或密码', }); const app =...
#angular-basicauth 目的 简单的AngularJs服务,用于管理登录和注销以及使用基本身份验证来保护服务器API端点。 它提供以下功能: 用于处理登录和注销操作的服务 根据默认为/ api / authentication的可配置服务器...
这里,`auth_basic`指令设置提示的认证消息,“Restricted Area”是提示用户输入凭证的文本。`auth_basic_user_file`指定包含用户名和密码的文件路径。 3. **重启Nginx服务**:完成配置更改后,需要重启Nginx服务...
在`basic-auth-django-master`压缩包中,你可能找到一个完整的示例项目,包括视图、中间件和URL配置,可供参考和学习。通过这个教程,你可以了解到如何在Django中实现HTTP基本身份验证,以及如何保护你的API或管理...
例如,使用`auth-header`库设置一个Basic Auth的认证头: ```javascript const authHeader = require('auth-header'); // 用户名和密码 const username = 'your_username'; const password = 'your_password'; //...
用 Flask 和 AngularJs 实现HTTP认证本文介绍用Flask 和 AngularJs 实现 HTTP Basic Auth。要实现登录认证功能,常用的有以下这两种方法:这两种方法各有优劣,Basic access authentication 主要是胜在简单,只需要...
资源分类:Python库 所属语言:Python 资源全名:wsgi-basic-auth-0.0.2.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059