使用web.config文件中的credentials元素

时间:2011-10-29 22:59:07

标签: asp.net-mvc-3

我正在关注“Pro ASP.NET Mvc 3 Framework Framework”一书。在本书中,他们展示了在web.config文件中,您可以使用凭证元素和用户元素来硬编码管理员设置的用户名和密码。当我这样做时,我收到错误,“无法识别的元素'凭据'”。然而,如果按F12进入定义,我可以在xml中找到该元素。我怎样才能让它发挥作用?

2 个答案:

答案 0 :(得分:2)

我遇到了同样的问题,直到我在MSDN网站上找到以下示例帮助我解决了我的问题。

<authentication mode="Windows">
   <forms 
      name=".ASPXAUTH" 
      loginUrl="login.aspx" 
      protection="All"  
      timeout="30" 
      path="/" 
      requireSSL="false" 
      slidingExpiration="true">
      <credentials passwordFormat="SHA1"></credentials>
   </forms>
   <passport redirectUrl="internal" />
</authentication>

简而言之,您必须在窗体标记内嵌套凭据。

答案 1 :(得分:1)

来自MSDN Dcoumentation

<configuration>
   <system.web>
      <authentication mode="Forms">
         <forms name="401kApp" loginUrl="/login.aspx">
            <credentials passwordFormat = "SHA1">
               <user 
                  name="UserName1" 
                  password="SHA1EncryptedPassword1"/>
               <user 
                  name="UserName2" 
                  password="SHA1EncryptedPassword2"/>
               <user 
                  name="UserName3" 
                  password="SHA1EncryptedPassword3"/>
            </credentials>
         </forms>
      </authentication>
   </system.web>
</configuration>

如果您要存储普通密码,似乎您可能想要使用passwordFormat = "Clear",但显然这应该只在使用TEST帐户进行开发/原型设计时完成,因为明确的密码是大的不,不!