- 浏览: 2162680 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (1878)
- [网站分类]ASP.NET (141)
- [网站分类]C# (80)
- [随笔分类]NET知识库 (80)
- [随笔分类]摘抄文字[非技术] (3)
- [随笔分类]养生保健 (4)
- [网站分类]读书区 (16)
- [随笔分类]赚钱 (7)
- [网站分类].NET新手区 (233)
- [随笔分类]网站 (75)
- [网站分类]企业信息化其他 (4)
- [网站分类]首页候选区 (34)
- [网站分类]转载区 (12)
- [网站分类]SQL Server (16)
- [网站分类]程序人生 (7)
- [网站分类]WinForm (2)
- [随笔分类]错误集 (12)
- [网站分类]JavaScript (3)
- [随笔分类]小说九鼎记 (69)
- [随笔分类]技术文章 (15)
- [网站分类]求职面试 (3)
- [网站分类]其他技术区 (6)
- [网站分类]非技术区 (10)
- [发布至博客园首页] (5)
- [网站分类]jQuery (6)
- [网站分类].NET精华区 (6)
- [网站分类]Html/Css (10)
- [随笔分类]加速及SEO (10)
- [网站分类]Google开发 (4)
- [随笔分类]旅游备注 (2)
- [网站分类]架构设计 (3)
- [网站分类]Linux (23)
- [随笔分类]重要注册 (3)
- [随笔分类]Linux+PHP (10)
- [网站分类]PHP (11)
- [网站分类]VS2010 (2)
- [网站分类]CLR (1)
- [网站分类]C++ (1)
- [网站分类]ASP.NET MVC (2)
- [网站分类]项目与团队管理 (1)
- [随笔分类]个人总结 (1)
- [随笔分类]问题集 (3)
- [网站分类]代码与软件发布 (1)
- [网站分类]Android开发 (1)
- [网站分类]MySQL (1)
- [网站分类]开源研究 (6)
- ddd (0)
- 好久没写blog了 (0)
- sqlserver (2)
最新评论
-
JamesLiuX:
博主,能组个队么,我是Freelancer新手。
Freelancer.com(原GAF – GetAFreelancer)帐户里的钱如何取出? -
yw10260609:
我认为在混淆前,最好把相关代码备份一下比较好,不然项目完成后, ...
DotFuscator 小记 -
日月葬花魂:
大哥 能 加我个QQ 交流一下嘛 ?51264722 我Q ...
web应用程序和Web网站区别 -
iaimg:
我想问下嵌入delphi写的程序总是出现窗体后面感觉有个主窗体 ...
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部 -
iaimg:
代码地址下不了啊!
C#自定义控件:WinForm将其它应用程序窗体嵌入自己内部
http://www.microsoft.com/taiwan/msdn/library/2003/dec-2003/vbnet10282003.htm
http://www.cnblogs.com/steeven/archive/2004/03/18/3523.aspx
一般概念:
1。初始化整个AppDomain的Principal策略(ASP.NET中策略由webconfig决定;更改无效;):
AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.NoPrincipal);
有时候需要(但一般不需要,并且多次调用会产生Exception):
初始化整个AppDomain的Principal:
AppDomain.CurrentDomain.SetTreadPrincipal();
2。初始化Principal:
new Identity();
new Principal();
Thread.CurrentPrincipal = myPrincipal;
3。Principal的两个: Identity;
IsInRole();
4。Identity的属性: Name;
AuthenticationType;
IsAuthenticated;——一旦给Identity赋值了Name和AuthenticationType,该属性就为true;否则为false;
Login步骤:
1。检验uid;pwd;
2。正确,则初始化Identity(Name,AuthenticationType——则此时IsAuthenticated=true),和Principal;
3。错误,也初始化Identity(Name="",AuthenticationType=""——则此时IsAuthenticated=false),和Principal;
4。if(Identity.IsAuthenticated)
{
Principal.IsInRole();// 判断用户角色;
}
分类:
WebForm:
Forms认证:
设置web.config中认证方式为:Forms;及loginURL;
我想过程可能是这样的:每次请求一个页面,aspnet_isapi都会检查Identity.IsAuthenticated属性;
为True,允许用户访问页面资源;False,定向到loginURL页面;
所以Login的角色相当于Windows自己的验证,只不过是给Identity初始化;
但是,这是错误的:aspnet_isapi不会检查Identity.IsAuthenticated属性;这个属性只有自己的代码来检查;
相当于开发人员有三种编码依据:Name、Type、Role;据此判断流程;
所以重要的一点就是保存用户的Principal(即HttpContex.Current.User),可以用Cookie;或缓存(是否能行??);
设置IIS-安全性-匿名访问;
写Login代码,分两步:
一。验证UID、PWD,并给Identity初始化;
二。重定向到原始请求页面:FormsAuthentication
Windows认证:
WindowsIdentity myIdentity = new WindowsIdentity("kevin","Normal");//为什么总是“无法登陆”???
Thread.CurrentPrincipal = new WindowsPrincipal(myIdentity);
正确方法:
设置web.config中认证方式为:windows;
设置IIS-安全性-去掉匿名访问,勾选windows集成认证;
则客户端访问时,第一次出现登陆对话框;
WindowForm:
Windows认证:??
突然觉得,Identity不过是一个用户信息的包装而已,包装了Name和Type,还要一个表示“是否包装”过的标志位:IsAuthenticated。
Principal才提供了一些验证的功能,如IsInRole。
另外重要的一点时:他们两个都是和线程(Thread)相关的,我想这是与自己包装的类的最大区别。
所以在编写线程相关的代码时(如线程池),需要注意:新创建的线程将使用一个新的Principal和Identity,除非自己编码:
myNewTread.CurrentPrincipal = Thread.CurrentPrincipal;
myNewTread.Start();
(对于BeginInvoke是个例外,确不知道是什么意思。)
发表评论
-
UML
2010-08-09 11:39 1304开放分类:计算机技术计算机术语计算机科学 收藏分享到顶[6] ... -
用WebService实现调用新浪的天气预报功能
2010-07-15 21:47 2977用WebService实现调用新 ... -
Cookie简介及JSP处理Cookie的方法
2010-07-29 09:28 973Cookie简介及JSP处理Cookie的方法 一.什么是 ... -
SQL Server 2005/2008 用户数据库文件默认路径和默认备份路径修改方法
2010-06-09 22:16 1258一直想把数据库的默认 ... -
C#Winform调用网页中的JS方法
2010-07-12 11:07 2234其实还是还是相当的简单,本文将详细的用代码来展示一下如何调用, ... -
用WebService实现调用新浪的天气预报功能
2010-07-15 21:47 1510用WebService实现调用新 ... -
SQL Server 2005/2008 用户数据库文件默认路径和默认备份路径修改方法
2010-06-09 22:16 1088一直想把数据库的默认 ... -
基于 VS 2010 阐述C# 4个特性
2010-05-28 09:26 1083基于 VS 2010 阐述C# 4个特性基于 VS 20 ... -
Google AdSense中文官方博客今天公布了AdSense内容广告与AdSense搜索广告的收入分成比例
2010-05-25 09:12 1130google adsense 的广告分成比例总算是公布出来了。 ... -
权限管理数据表设计说明
2010-05-21 15:19 1085权限管理数据表设计说明 B/S系统中的权限比C/S中的更显的 ... -
权限管理的设计方法
2010-05-20 09:26 1430权限管理的设计方法是 ... -
多表分页存储过程
2010-05-17 14:25 1063分页存储过程 在网站设计,网页开发中,是要被经常遇到的。 ... -
vs2010跟vs2008比较增加了哪些功能
2010-05-18 09:10 2255随着vs2010的发布,新的 ... -
COM域名难逃实名监管 CN域名简化流程抢用户
2010-05-13 09:22 1192互联网实名制的落实第 ... -
网站安全之XSS漏洞攻击以及防范措施
2010-04-29 08:59 1436在网站开发中,安全问题是重中之重的问题,特别像一个sql注入, ... -
深入了解ASP.NET运行内幕
2010-04-28 09:04 1172做事情要知道根本所在 ... -
WebBrowser中显示乱码
2010-04-22 09:09 1740最近在开发cs项目的时候,因为嵌套了一个网页,要用到we ... -
vps配置笔记(10)架设svn服务
2010-04-21 09:41 1268linux 下面架设svn服务器,有点难度,我找了好多资料,现 ... -
IEnumerable
2010-04-16 09:12 1274在平常的代码编写中,虽然不常用到Ienumerable 但却不 ... -
JS代码实例:实现随机加载不同的CSS样式
2010-04-19 13:38 1420如果让网页浏览者每次打开页面都有新的感觉,可以通过替换css样 ...
相关推荐
Redis 服务器提供了密码验证机制,以确保只有授权的客户端才能连接到服务器。该机制通过在 Redis 配置文件中设置密码来实现。密码可以通过 `requirepass` 指令在配置文件中设置。例如,在 Redis 配置文件中添加以下...
第10章添加验证与授权 Authentication概述 Authorization概述 实现一个Authentication过滤器 实现一个Authorization过滤器 小结 第11章使用Attribute定义URL路由 Attribute路由基础知识 路由前缀 路由约束 ...
3. **配置文件**:Web.config中关于身份验证和授权的配置,如启用FormsAuthentication,设置票证过期时间,以及权限控制规则。 4. **角色和用户管理**:可能包括创建和管理用户、角色的代码,以及将用户分配到角色的...
Authentication Adapter带有触摸屏,允许用户通过各种认证方式(如IC卡)进行身份验证,确保只有授权的人员可以访问打印、复印和扫描等功能。 **Authentication Adapter概述** Authentication Adapter的主要功能是...
### iPod Authentication Coprocessor Specification详解 #### 一、概述 **iPod Authentication Coprocessor**是苹果公司(Apple Inc.)开发的一种专用芯片,用于在iPod和其他Apple设备之间进行安全的数据交换。此...
开发者可以通过简单的配置,使Express应用能够解析和验证来自客户端的Bearer Token,从而保护API资源不被未经授权的访问。 项目的核心功能包括: 1. **Token解析**:中间件自动从请求头中提取Bearer Token,通常是...
**认证 Authentication** 在任何涉及用户安全的应用中都是至关重要的。在WCF RIA Services中,认证涉及到验证用户的身份,确保只有经过授权的用户才能访问特定资源或执行特定操作。这个案例源码很可能是展示了如何在...
随着智能手机的普及,移动认证变得越来越重要,因为它确保了用户的隐私安全,并防止了未授权访问。 #### 应用场景 - **移动支付**:通过指纹、面部识别等方式进行快速支付。 - **应用登录**:许多应用程序都需要...
从提供的文件内容来看,文件标题和描述中提到了两个关键词:Authentication与Authorization,以及Encryption。这三个词汇在信息安全和网络安全领域中非常关键,它们分别是身份验证、授权以及加密。在讨论这三个概念...
操作系统之安全算法:Authentication and Authorization:授权机制深入解析.docx
"NR网络拒绝码-5gsm_cause = 29 (0x1d) (User authentication failed)"是其中一个特定的错误,表示UE的鉴权或授权失败。本文将深入探讨此问题的原因、3GPP协议中的相关规定以及UE如何应对这种情况。 1. 问题描述: ...
标题中提到的“An Improved Uniform Identity Authentication Method.pdf”和描述中的内容表明,本文档是一项改进的基于SAML(Security Assertion Markup Language)的身份认证方法,它专注于在云环境中实现改进的...
在Rails应用中,用户认证和授权是常见的需求,用于保护应用资源的安全。"http_authentication"和"restful-authentication"是两个早期的Rails登录和验证插件,它们为Rails应用提供了基本的身份验证功能。 HTTP基本...
操作系统之安全算法:Authentication and Authorization:高级授权与访问控制技术.docx
《iOS设备通讯协议详解——基于iPod Authentication Coprocessor Spec 2.0C R1》 在iOS设备的生态系统中,通信协议起着至关重要的作用,确保设备与各种服务、应用以及外部配件之间的无缝交互。这份名为“iPod ...
部署802.1X的目的通常是为了加强网络安全,确保只有经过授权的用户和设备才能访问网络资源,减少了未授权访问带来的安全风险。它被广泛应用于企业、教育机构和政府机构的网络中,以满足其安全政策的要求。 本文件的...
苹果公司为提高用户数据安全性,强制要求所有开发者账号启用双重认证(Two-Factor Authentication,简称2FA),这是保护账户免受恶意攻击的重要措施之一。 双重认证是一种多因素验证机制,通常包括以下两个部分: ...
8. **个性化和角色管理**:Authentication Service也支持基于角色的授权。通过检查用户的角色,可以控制对特定页面或功能的访问,实现个性化用户体验。 9. **AJAX Toolkit**:除了核心的ASP.NET AJAX库,还可以利用...
总的来说,openlxp_authentication库为Python开发者提供了一套强大且灵活的身份验证和授权解决方案,使得在构建安全的应用程序时能更加专注业务逻辑,而无需从零开始设计和实现认证和授权系统。对于任何涉及用户登录...