我有一个 asp.net 项目,我正在尝试开发用户配置文件部分,以便用户可以使用自己的配置文件(包含管理员和用户的配置文件)登录。
当用户登录然后让用户浏览网站时,可以在用户计算机上设置cookie吗?我的意思是在我检查用户名和密码之后,通过检查每个页面上的这个 cookie,我让用户浏览页面或重定向到登录页面。
这条路好吗?
这可以安全使用吗?
有没有更好的方法呢?
我有一个 asp.net 项目,我正在尝试开发用户配置文件部分,以便用户可以使用自己的配置文件(包含管理员和用户的配置文件)登录。
当用户登录然后让用户浏览网站时,可以在用户计算机上设置cookie吗?我的意思是在我检查用户名和密码之后,通过检查每个页面上的这个 cookie,我让用户浏览页面或重定向到登录页面。
这条路好吗?
这可以安全使用吗?
有没有更好的方法呢?
您可以使用 SqlProfileProvider。添加配置文件属性可以通过向您的 web.confing 添加一些代码来完成(在 system.web 部分,sqlprofile 结构的数据库必须存在):
<profile defaultProvider="SqlProvider">
<providers>
<clear/>
<add name="SqlProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ASPNETDB" applicationName="MyApplication" description="SqlProfileProvider"/>
</providers>
<properties>
<add name="LanguageId" allowAnonymous="false" type="System.Int32"/>
<add name="Company" allowAnonymous="false" type="System.String"/>
</properties>
</profile>
在此示例中,我添加了两个配置文件属性 languageId 和 Company。您可以使用以下代码访问此属性:
ProfileBase profile = ProfileBase.Create("SomeUserName");
string company = (string)profile["Company"];
有关 SqlProfileProvider 的更多信息,请访问以下链接:
http://msdn.microsoft.com/en-us/library/system.web.profile.sqlprofileprovider.aspx
我已经写了几个关于从头开始创建配置文件的操作方法答案:
对于网站(根据 Web.config 设置为您自动生成配置文件对象)。
对于 Web 应用程序(如 MVC,您需要指定类继承ProfileBase
)