如何在IIS管理器中为ASP.NET 4.0应用程序添加用户?

Sla*_*uma 11 asp.net iis iis-7 iis-manager asp.net-4.0

我在IIS 7.5中安装了ASP.NET 4.0 Web窗体应用程序.如果我将应用程序池设置为DefaultAppPool(.NET Framework 2.0),我会在IIS管理器中的应用程序配置页面上显示Providers,.NET-Roles和.NET-Users的图标,我可以在IIS中管理用户和角色.(我正在使用Forms身份验证.)

但是,如果我将应用程序池设置为ASP.NET v4.0,则会出现问题:双击IIS管理器中的用户或角色图标会引发错误,告诉我我无法使用这些功能,因为提供程序无法确定为值得信赖的.如果我在设定administration.configtrustedProviders部分allowUntrustedProviders ="真"上的一个图标,双击我再次得到错误,大会的System.Web,4.0.0.0版本,区域性=中性,公钥= b03f5f7f11d50a3a不能被发现.如果我重新启动IIS管理器,图标将完全消失.

绝对安装了.NET Framework 4.0.所以这一切都让人很困惑.我知道.NET 4使用的是另一个GAC而不是.NET 2-3的旧GAC.是否有可能IIS管理器无法找到新的GAC for .NET 4?我是否必须将一些新的4.0程序集添加到administration.config中?是否有另一种方法来添加用户和角色而不是IIS?

提前感谢您的帮助!

Ter*_*lla 10

有一个简单的解决方法比构建管理页面容易得多.

  1. 在您的服务器上创建一个新站点.您可以将其命名为MembershipAdminstrationYourActualSiteName.绑定无关紧要,因为您不会在此站点上执行任何页面,但请确保它在2.0默认应用程序池中运行.

  2. 将web.config从4.0站点复制到新站点的文件夹.编辑文件,删除除connectionString,authentication,memebership,roleManager和profile部分之外的所有内容.

  3. 现在在IIS管理器中访问.NET角色和.NET用户.假设您正确编辑了web.config文件,您应该会看到4.0应用程序的用户和角色.


Car*_*res 9

遗憾的是,如果您的应用程序池使用.NET 4.0,则目前不支持这些功能,因为这需要IIS管理器加载.NET 4.0框架才能调用正确的提供程序(这就是.NET Users/Membership,.NET的原因)角色等),因为IIS管理器是.NET 2.0应用程序所以不可能.

所以目前没有好的解决方法,除了暂时将应用程序池更改为2.0并添加它们然后切换回4.0.但是,除非它只是一台开发机器,否则你不应该这样做.

否则,您可以使用CreateUserWizard控件构建页面,并使用ASP.NET中的内置Login控件,它应该是一行(标记)以获得类似的功能.