背景:我有一个asp.net webapplication项目,应该包含一个公共区域和一个成员区域.现在我想实现SSL解密以保护客户端和服务器之间的通信.(在大学我们有一个不安全的无线网络,你可以使用wlan嗅探器来读取用户名/密码.我不想让我的应用程序出现这个安全问题,所以我想到了一个ssl decription)
该应用程序在IIS 7.5上运行.是否有可能有一个具有不安全页面的Web应用程序(如公共区域)和安全区域(如成员区域,需要登录)?如果是,我如何重新确定这些区域之间的沟通?
示例:我的webapp托管在 http://foo.abc.我有像http://foo.abc/default.aspx和的页面http://foo.abc/foo.aspx.
在同一个项目中,有一个页面/member/default.aspx受到页面登录的保护http://foo.abc/login.aspx.
所以我需要为页面/login.aspx和所有页面实现SSL/member/
我怎样才能做到这一点?我刚刚了解了如何在IIS 7.5中创建SSL证书以及如何将这样的绑定添加到webapp.如何告诉我的webapp应该使用https调用哪个页面,而不是http.那里最好的做法是什么?
从这里开始如何在 ASP.Net 应用程序中使用 HTTPS
设置/安装 SSL 后,您希望在登录页面上执行某种重定向到 https://。然后,验证后用户发送到的任何页面都可以是 http://。
Protected Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
If Request.IsSecureConnection = False And _
Not Request.Url.Host.Contains("localhost") Then
Response.Redirect(Request.Url.AbsoluteUri.Replace("http://", "https://"))
End If End Sub
Run Code Online (Sandbox Code Playgroud)
这可能更容易在母版页或您需要 https 的所有页面上实现。通过检查“localhost”,您将避免在测试环境中出现错误(除非您的测试服务器有其他名称而不是检查该名称:“mytestservername”)。
| 归档时间: |
|
| 查看次数: |
2186 次 |
| 最近记录: |