当前位置:首页 » 著名认证 » http认证

http认证

发布时间: 2020-11-20 20:48:13

㈠ 如何设置http代理服务器的认证方式麻烦告诉我

2. 点击“局域网设置”按钮,弹出如下对话框
3. 在上图中的代理服务器栏中选中“为 LAN 使用代理服务器”选项,并在“地址”和“端口”栏中分别输入代理服务器的地址和端口。设置完成最后按“确定”按钮即可。

㈡ 如何使用HttpClient认证机制

1.服务器认证(Server Authentication)
HttpClient处理服务器认证几乎是透明的,仅需要开发人员提供登录信息(login
credentials)。登录信息保存在HttpState类的实例中,可以通过 setCredentials(String realm,
Credentials cred)和getCredentials(String realm)来获取或设置。
HttpClient内建的自动认证,可以通过HttpMethod类的setDoAuthentication(boolean doAuthentication)方法关闭,而且这次关闭只影响HttpMethod当前的实例。

1.1抢先认证(Preemptive Authentication)
在这种模式时,HttpClient会主动将basic认证应答信息传给服务器,即使在某种情况下服务器可能返回认证失败的应答,这样做主要是为了减少连接的建立。使用该机制如下所示:
client.getParams().setAuthenticationPreemptive(true);

抢先认证模式也提供对于特定目标或代理的缺省认证。如果没有提供缺省的认证信息,则该模式会失效。
Credentials defaultcreds = new UsernamePasswordCredentials("username", "password");
client.getState().setCredentials(new AuthScope("myhost", 80, AuthScope.ANY_REALM), defaultcreds);

Httpclient实现的抢先认证遵循rfc2617.
A
client SHOULD assume that all paths at or deeper than the depth of the
last symbolic element in the path field of the Request-URI also are
within the protection space specified by the Basic realm value of the
current challenge. A client MAY preemptively send the corresponding
Authorization header with requests for resources in that space without
receipt of another challenge from the server. Similarly, when a client
sends a request to a proxy, it may reuse a userid and password in the
Proxy-Authorization header field without receiving another challenge
from the proxy server.

1.2服务器认证的安全方面考虑
当需要与不被信任的站点或web应用通信时,应该谨慎使用缺省的认证机制。当启动(activate)抢先认证模式,或者认证中没有明确给出认证域,主机的HttpClient将使用缺省的认证机制去试图获得目标站点的授权
如果你提供的认证信息是敏感的,你应该指定认证域。不推荐将认证域指定为AuthScope.ANY。(只有在debugging情况下,才使用)
// To be avoided unless in debug mode
Credentials defaultcreds = new UsernamePasswordCredentials("username", "password");
client.getState().setCredentials(AuthScope.ANY, defaultcreds);

2.代理认证(proxy authentication)
除了登录信息需单独存放以外,代理认证与服务器认证几乎一致。用 setProxyCredentials(String realm, Credentials cred)和 getProxyCredentials(String realm)设、取登录信息。
3.认证方案(authentication schemes)
3.1Basic
是HTTP中规定最早的也是最兼容的方案,遗憾的是也是最不安全的一个方案,因为它以明码传送用户名和密码。它要求一个UsernamePasswordCredentials实例,可以指定服务器端的访问空间或采用默认的登录信息。

3.2 Digest
是在HTTP1.1 中增加的一个方案,虽然不如Basic得到的软件支持多,但还是有广泛的使用。Digest方案比Basic方案安全得多,因它根本就不通过网络传送实际的密码,传送的是利用这个密码对从服务器传来的一个随机数(nonce)的加密串。
它要求一个UsernamePasswordCredentials实例,可以指定服务器端的访问空间或采用默认的登录信息。

3.3 NTLM
这是HttpClient支持的最复杂的认证协议。它Microsoft设计的一个私有协议,没有公开的规范说明。一开始由于设计的缺陷,NTLM的安全性比 Digest差,后来经过一个ServicePack补丁后,安全性则比较Digest高。
NTLM需要一个NTCredentials实例。
注意,由于NTLM不使用访问空间(realms)的概念,HttpClient利用服务器的域名作访问空间的名字。还需要注意,提供给
NTCredentials的用户名,不要用域名的前缀 - 如: "adrian" 是正确的,而 "DOMAIN\adrian" 则是错的。
NTLM认证的工作机制与basic和digest有很大的差别。这些差别一般由HttpClient处理,但理解这些差别有助避免在使用NTLM认证时出现错误。
[1] 从HttpClientAPI的角度来看,NTLM与其它认证方式一样的工作,差别是需要提供'NTCredentials'实例而不是'UsernamePasswordCredentials'(其实,前者只是扩展了后者)
[2] 对NTLM认证,访问空间是连接到的机器的域名,这对多域名主机会有一些麻烦。只有HttpClient连接中指定的域名才是认证用的域名。建议将realm设为null以使用默认的设置。
[3]
NTLM只是认证了一个连接而不是一请求,所以每当一个新的连接建立就要进行一次认证,且在认证的过程中保持连接是非常重要的。
因此,NTLM不能同时用于代理认证和服务器认证,也不能用于HTTP1.0连接或服务器不支持持久连接(keep-alives)的情况。

㈢ 站点登录和HTTP身份验证之间的区别

1、基于表单的认证是最常用的认证形式。它是在web应用中实现的认证类型,可以从目回标的“站点登录”部答分在Acunetix中配置此类型的身份验证。
2、另一方面,HTTP认证在Web服务器中配置,并且通常用作增加的安全级别。验证窗口在加载任何页面之前显示,并且如屏幕截图中所示。 不同的浏览器以不同的方式显示此消息。
3、Acunetix也支持HTTP身份验证,可以从目标的设置> HTTP选项卡> HTTP身份验证进行配置。

㈣ https、http的区别,域名、证书怎么弄

域名、证书直接向域名商来进行申请,https、http区别如下:

一、主体不同

1、https:是以安全为目标的 HTTP 通道,在HTTP的基础上通过传输加密和身份认证保证了传输过程的安全性。

2、http:是一个简单的请求-响应协议,通常运行在TCP之上。

二、特点不同

1、https:HTTPS 在HTTP 的基础下加入SSL层,HTTPS 的安全基础是 SSL,因此加密的详细内容就需要 SSL。

2、http:指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。请求和响应消息的头以ASCII码形式给出;而消息内容则具有一个类似MIME的格式。


三、作用不同

1、https:存在不同于 HTTP 的默认端口及一个加密/身份验证层。这个系统提供了身份验证与加密通讯方法。被广泛用于万维网上安全敏感的通讯,例如交易支付等方面

2、http:主要是应用于WEB端内容获取。


㈤ win7搭建http服务器需要进行身份验证

你是使用什么HTTP服务器软件搭建了一台什么样的服务器?HTTP服务器能搭建的环境太多了,能搭建的服务类型更多,那种第三方的服务可以用无数来形容,随便写几句话就是个HTTP服务器,所以说你要说清楚类型,这种事情就跟你说装了个win7系统,安装了个软件不好使有什么区别?

㈥ 请教http摘要认证客户端的Java实现

HttpURLConnection hc = null;
try
{
hc = (HttpURLConnection) new URL(url).openConnection();
hc.setConnectTimeout(10000);
hc.setReadTimeout(10000);
hc.setDoInput(true);
hc.setDoOutput(true);
hc.setUseCaches(false);

String content = param;
DataOutputStream out = new DataOutputStream(hc.getOutputStream());

out.writeBytes(content);
out.flush();
out.close();
//从hc中取出sessionId
for (int i = 1; (key = hc.getHeaderFieldKey(i)) != null; i++)
{
if (key.equalsIgnoreCase("Set-Cookie"))
{
sessionId = hc.getHeaderField(key);
sessionId = sessionId.substring(0, sessionId.indexOf(";"));
break;
}
}
BufferedReader reader = new BufferedReader(
new InputStreamReader(hc.getInputStream()));
String lines;
while ((lines = reader.readLine()) != null)
{
break;
}

reader.close();
catch (Exception e)
{
//
//e.printStackTrace();
return false;
}
finally
{
// 断开连接
hc.disconnect();
}

㈦ 如何使用HttpClient认证机制

由于HttpClient内置支持HTTPBasic认证方式,因而使用HttpClient通过HTTPBasic认证的步骤显得较为简单。

1.为HttpClient的状态对象添加用户名/密码对。可以注意到在setCredentials方法中的另一个参数为AuthScope对象。事实上我们添加的每个用户名/密码对都与一个AuthScope对象相关联。AuthScope对象确定了此用户名/密码对的适用站点,在示例中所给出的用户名/密码对将只适用于www.sample.com位于80端口上的资源。HttpClient在与其他站点交互时将不会使用此用户名/密码对,这样有效地防止了机密数据被传送至不必要的站点。

2.开启HttpClient提供的占先式(Preemptive)认证功能。开启了这个功能后,HttpClient对于那些处在之前请求过的URI空间范围内的资源,会主动地随请求一起向服务器发送Basic认证数据,而不是等待服务器返回是否需要认证的响应后再提交认证。在多数情况下,能够减少请求-响应传递的次数,从而间接提高了服务器的响应能力。值得注意的是在这种情况下必须在AuthScope对象中明确指定适用站点,以避免向不相关的站点泄漏敏感数据。3.创建GetMethod对象,此对象将使用GET方式对保护资源发出HTTP请求。

4.setDoAuthentication(true)语句将告知HttpClient在服务器端发回需要认证的请求后,自动将我们在步骤1中设置的用户名/密码对发送至服务器,以完成认证过程。

5.执行GET请求,获取和处理受保护资源的内容。

㈧ 如何实现curl 的http基础认证

桌面应用程序也通过HTTP协议跟Web服务器交互, 桌面应用程序一般不会使用cookie, 而是把 "用户名+冒号+密码"用BASE64算法加密后的字符串放在http request 中的header Authorization中发送给服务端, 这种方式叫HTTP基本认证(Basic Authentication)
当浏览器访问使用基本认证的网站的时候, 浏览器会提示你输入用户名和密码

㈨ 使用http动词篡改的认证旁路

第一种办法:在/opt/IBM/HTTPServer/conf 下的httpd.conf也就是apache的配置文件.加上如下代码

<Location />
<LimitExcept GET POST HEAD CONNECT OPTIONS>
Order Allow,Deny
Deny from all
</LimitExcept>
</Location>

LimitExcept 后面写的是允许经过的http方法,我这边是was8.5默认的put和delete、trace方法是禁止的,head方法好像默认不禁止,你在这里写上LimitExcept GET POST

只允许post和get方法也没用,head照样可以走,我猜想是在was8.5本身默认禁止和不禁止的配置上加这些代码的吧。
第二种方法:在程序中加过滤器,我是Struts1 ,针对每一个请求都加上过滤器,使用request.getMethod方法判断,除了get,post , head,connect ,options之外的方法都直接return就行了,如下所示。

if(method.equalsIgnoreCase("post")||method.equalsIgnoreCase("get")||method.equalsIgnoreCase("head")
||method.equalsIgnoreCase("trace")||method.equalsIgnoreCase("connect")||method.equalsIgnoreCase("options")){

}

㈩ 电脑老是提示http代理认证是什么意思

你不要使用代理服务器就好了
在菜单栏工具里面有个代理服务器一项,里面有三个,选“不使用代理服务器”

热点内容
美发店认证 发布:2021-03-16 21:43:38 浏览:443
物业纠纷原因 发布:2021-03-16 21:42:46 浏览:474
全国著名不孕不育医院 发布:2021-03-16 21:42:24 浏览:679
知名明星确诊 发布:2021-03-16 21:42:04 浏览:14
ipad大专有用吗 发布:2021-03-16 21:40:58 浏览:670
公务员协议班值得吗 发布:2021-03-16 21:40:00 浏览:21
知名书店品牌 发布:2021-03-16 21:39:09 浏览:949
q雷授权码在哪里买 发布:2021-03-16 21:38:44 浏览:852
图书天猫转让 发布:2021-03-16 21:38:26 浏览:707
宝宝水杯品牌 发布:2021-03-16 21:35:56 浏览:837