我使用的是Windows Server 2003 + VSTS 2008 + .Net 3.5 + C#+ ASP.Net + IIS 6.0。我在Web服务器上托管了一些文件(wmv视频文件和html文件),我想知道是否有任何易于使用的身份验证方法让用户输入用户名和密码才能访问(我想阻止匿名访问)?由于该网站还有aspx ASP.Net页面,我想为wmv,html和aspx页面使用统一的身份验证解决方案。如果喜欢使用存储在我的应用程序已经拥有/使用的SQL Server数据库中的用户名和密码的任何解决方案。
有什么想法吗?
答案 0 :(得分:1)
看一下插入asp.net管道的Custom HTTP Modules。您可以在要保护的任何资源上有效地插入身份验证层。
答案 1 :(得分:1)
我建议您查看ASP.NET Membership Provider。
这是我见过的最“统一”的身份验证解决方案,它为asp.net开发人员提供了开箱即用的功能。
这样,您可以使用默认的asp.net sql成员资格提供程序(或创建自己的实现),让它设置您的用户/角色表(如果您使用的是sql成员资格提供程序),然后锁定每个文件夹以在web.config中进行身份验证。
到目前为止,在许多不同的实现中,我一直在使用成员资格提供程序(以及角色提供程序)。
另外,请查看How To: Use Forms Authentication with SQL Server in ASP.NET 2.0
答案 2 :(得分:0)
使用IIS 6时,如果要利用ASP.NET Forms Authentication来限制对非ASP.NET文件和资源(.pdf, .gif, .jpg, .wmv
等)的访问,则必须将通配符映射到ASP。 NET 2.0 ISAPI过滤器。
您可以通过以下方式执行此操作:
Web Site Properties -> Home Directory Tab -> Click Configuration -> Mappings Tab
单击“插入”按钮,在标有“可执行文件”的文本框中添加以下路径:
c:\windows\microsoft.net\framework\v2.0.50727\aspnet_isapi.dll