社区
C#
帖子详情
Forms身份验证问题!?
athenalee
2006-11-01 04:31:10
FormsAuthentication和FormsAuthenticationTicket有什么区别,怎么用?
有没有源文件啊,发一个给小弟,谢谢
athenalee@126.com
...全文
143
3
打赏
收藏
Forms身份验证问题!?
FormsAuthentication和FormsAuthenticationTicket有什么区别,怎么用? 有没有源文件啊,发一个给小弟,谢谢 athenalee@126.com
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
3 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
marvelstack
2006-11-03
打赏
举报
回复
解释:ASP.NET 2.0 中的窗体身份验证
http://www.microsoft.com/china/msdn/library/webservices/asp.net/PAGExplained0002.mspx?mfr=true
cleron800
2006-11-02
打赏
举报
回复
可以参考以下配置文件
=================================================================================
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="ConnStr" value="server=(local);uid=sa;pwd=sa;database=PCPSoft "/>
<add key="ConnAdmin" value="server=(local);uid=sa;pwd=sa;database=PCPSoft "/>
</appSettings>
<system.web>
<!-- 动态调试编译
设置 compilation debug="true" 以启用 ASPX 调试。否则,将此值设置为
false 将提高此应用程序的运行时性能。
设置 compilation debug="true" 以将调试符号(.pdb 信息)
插入到编译页中。因为这将创建执行起来
较慢的大文件,所以应该只在调试时将此值设置为 true,而在所有其他时候都设置为
false。有关更多信息,请参考有关
调试 ASP.NET 文件的文档。
-->
<compilation
defaultLanguage="c#"
debug="true"
/>
<httpRuntime maxRequestLength="10240"
useFullyQualifiedRedirectUrl="true"
executionTimeout="45"/><!--设置最大附件上传为10M-->
<!-- 自定义错误信息
设置 customErrors mode="On" 或 "RemoteOnly" 以启用自定义错误信息,或设置为 "Off" 以禁用自定义错误信息。
为每个要处理的错误添加 <error> 标记。
"On" 始终显示自定义(友好的)信息。
"Off" 始终显示详细的 ASP.NET 错误信息。
"RemoteOnly" 只对不在本地 Web 服务器上运行的
用户显示自定义(友好的)信息。出于安全目的,建议使用此设置,以便
不向远程客户端显示应用程序的详细信息。
-->
<customErrors
mode="Off"
/>
<!-- 身份验证
此节设置应用程序的身份验证策略。可能的模式是 "Windows"、
"Forms"、 "Passport" 和 "None"
"None" 不执行身份验证。
"Windows" IIS 根据应用程序的设置执行身份验证
(基本、简要或集成 Windows)。在 IIS 中必须禁用匿名访问。
"Forms" 您为用户提供一个输入凭据的自定义窗体(Web 页),然后
在您的应用程序中验证他们的身份。用户凭据标记存储在 Cookie 中。
"Passport" 身份验证是通过 Microsoft 的集中身份验证服务执行的,
它为成员站点提供单独登录和核心配置文件服务。
-->
<authentication mode="Forms">
<forms name="PcpWeb" loginUrl="Admin\login.aspx" protection="All" timeout="120" />
<!--name 身份验证cookie 的名称。如果在Web 服务器上有多个ASP.NET应用程序,就应确保给所使用的每个身份验证cookie指定不同的名称。
loginUrl 未授权用户被重定向的登陆页面。这个loginUrl可以放在相同的服务器上,也可以防在其他服务器上。如果loginUrl放在其他服务器上,这两个服务器就应在 machineKey 标记中使用相同的 decryptionKey 参数。-->
</authentication>
<machineKey validationKey="AutoGenerate" decryptionKey="AutoGenerate" validation="SHA1" />
<!--validationKey 指定在验证Cookie的身份数据时要使用的验证密钥。这个元素的值可以是AutoGenerate或手工赋予的密钥。
密钥的最大和最小长度分别为40个字符(30个字节)和128个字符(64字节)。 AutoGenerate 是默认值。
decryptionKey 指定在验证 cookie 的身份数据时要使用的加密密钥。该属性的值与validationKey相同。
validation 指定用于验证数据的加密类型。其值可以是 SHA1 、MD5或 3DES。SHA1和MD5是散列算法,3DES是用于加密和解密数据的算法。-->
<authorization>
<!-- 授权
此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
(未经身份验证的)用户。
-->
<allow users="*" /> <!-- 允许所有用户 -->
<!-- <allow users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
<deny users="[逗号分隔的用户列表]"
roles="[逗号分隔的角色列表]"/>
-->
</authorization>
<!-- 应用程序级别跟踪记录
应用程序级别跟踪为应用程序中的每一页启用跟踪日志输出。
设置 trace enabled="true" 可以启用应用程序跟踪记录。如果 pageOutput="true",则
在每一页的底部显示跟踪信息。否则,可以通过浏览 Web 应用程序
根目录中的 "trace.axd" 页来查看
应用程序跟踪日志。
-->
<trace
enabled="false"
requestLimit="10"
pageOutput="false"
traceMode="SortByTime"
localOnly="true"
/>
<!-- 会话状态设置
默认情况下,ASP.NET 使用 Cookie 来标识哪些请求属于特定的会话。
如果 Cookie 不可用,则可以通过将会话标识符添加到 URL 来跟踪会话。
若要禁用 Cookie,请设置 sessionState cookieless="true"。
-->
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
cookieless="false"
timeout="15"
/>
<!-- 全球化
此节设置应用程序的全球化设置。
-->
<globalization
requestEncoding="GB2312"
responseEncoding="GB2312"
/>
</system.web>
<location path="PcpWebAdmin">
<system.web>
<authorization>
<allow users="admin" />
<deny users="?" />
</authorization>
</system.web>
</location>
</configuration>
scow
2006-11-02
打赏
举报
回复
FormsAuthentication提供了许多和权限相关的静态方法
FormsAuthenticationTicket是采取forms验证的情况下,附加到cookie的身份验证票.
代码可参考下面链接
http://www.mikecat.net/blogview.asp?logID=588
相关推荐
ASP.NET实现基于
Forms
认证的WebService应用实例
本文实例讲述了ASP.NET实现基于
Forms
认证的WebService应用方法。分享给大家供大家参考。具体实现方法如下: 在安全性要求不是很高的ASP.Net程序中,基于
Forms
的
身份验证
是经常使用的一种方式,而如果需要对WebService进行
身份验证
,最常用的可能是基于Soap 标头的自定义
身份验证
方式。如果对两者做一下比较的话,显然,基于
Forms
的验证方式更加方便易用,能否将
Forms
验证方式应用到WebService中去呢? 从理论上讲,使用基于
Forms
的方式对WebService进行
身份验证
是可行的,但是使用过程中会存在以下两个
问题
: 1.基于
Forms
的验证方式同时也是基于
IE11下用
forms
身份验证
的
问题
IE11下用
forms
身份验证
的
问题
<authentication mode="
Forms
"> <
forms
name="weboa" loginUrl="login.aspx" protection="All" path="/"/> </authentication> ...
ASP.NET里面的
身份验证
和授权(二)
接着我们上面那篇文章,今天我们来重点说一下
Forms
身份验证
,并借
Forms
身份验证
说一下授权的
问题
。
.net窗体
身份验证
方案
一套.net窗体
身份验证
方案(解决了防止用户重复登陆,session超时等
问题
) 一.设置web.config相关选项 先启用窗体
身份验证
和默认登陆页,如下。authentication mode="
Forms
">
forms
loginUrl="default.aspx">
forms
>authentication> 设置网站可以匿名访问,如下authorization>
Asp.net的
身份验证
之
Forms
身份验证
(三)
1、基于Windows的
身份验证
将元素下的 设置为Windows;基于
Forms
的
身份验证
将元素下的 设置为
Forms
。2、基于
Forms
的
身份验证
时,设置元素下的 元素的 子元素,示例如下,仅为说明 authentication mode="
Forms
">
forms
name=".VS2005_Form" loginUrl="~/Security/Login.as
发帖
C#
C#
.NET技术 C#
复制链接
扫一扫
10.9w+
社区成员
64.2w+
社区内容
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
帖子事件
创建了帖子
2006-11-01 04:31
社区公告
让您成为最强悍的C#开发者