首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTTPS请求到HTTPS报头?

HTTPS请求到HTTPS报头?
EN

Stack Overflow用户
提问于 2013-06-21 23:52:23
回答 2查看 1.3K关注 0票数 0

这更多是出于好奇,因为我找不到任何关于这一现象的答案或文档,但下面是一个场景:

有两个服务/应用程序,它们都托管在IIS 7上。服务1从外部源(浏览器、摆弄器等)接收HTTPS请求。为了验证它需要调用服务2的请求,服务1通过HTTP对服务2进行了自己的、新的、单独的调用。这个调用在请求对象中添加了一个授权头。当服务2接收到这个调用时,身份验证头就被删除了,就好像被删除了一样。因此,身份验证失败,这将返回服务1,然后服务1拒绝外部调用。

有谁能解释一下为什么这个标头和我在测试中看到的其他一些头没有通过HTTP调用来完成呢?这是IIS或ASP.NET的行为还是什么?如果对服务2的调用是HTTPS,那么报头将使其通过良好。我正在生成这样的请求:

代码语言:javascript
运行
复制
string uriendpoint = "http://service.test.com/testService.svc/authtest";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uriendpoint);
request.Credentials = CredentialCache.DefaultCredentials;
var authField = MD5Hash("test:test!!2013");
request.Headers.Add(HttpRequestHeader.Authorization, authField.ToString());
request.Method = WebRequestMethods.Http.Get;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-06-24 16:43:05

我的一位同事发现这种行为的根本原因是IIS的"URL重写“模块。我们已经设置了将http请求永久重定向到https的设置,而这个重定向就是头文件被删除的地方。IIS这样做有点奇怪,但我想我会尝试其他方法来解决这个问题。

票数 0
EN

Stack Overflow用户

发布于 2013-06-21 23:59:11

“服务2”很可能有类似于“如果传入请求是HTTP忽略授权头”的代码。这是非常合理的行为,因为HTTP流量可以很容易地被嗅探和重放-所以诚实的服务器阻止调用者可能不安全的行为。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17245900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档