文档详情

成员关系和身份验证.PDF

发布:2018-05-26约2.2万字共26页下载文档
文本预览下载声明
第 章 4 成员关系和身份验证 成员关系的概念在人类社会中是一个层次比较低的概念,源于希望属于某个群组的意 识。我们希望能觉得自己是某个团队的一部分,让别人知道我们是谁,因此 Web 搭上这个 流行趋势,采用这个概念只是时间早晚的问题。如果坐下来想一想曾经登录过多少个站点 并在这些站点上保存了简单的用户信息,可能会发现自己所属的群组比一开始想象的要多 得多。从出售书籍和小器具的站点到讨论拥有一辆 Ford Puma 的好处的社区,或者宣传一 个名为 Look Around You 的BBC TV 喜剧节目的站点,作者发现自己是会员的站点多得无法 一一列举。接下来就会碰到一个熟悉的困难“登录这个站点要使用哪个用户名和口令?” Web 上最成功的站点之一,A ,一开始只是一个书店,但后面经营的范围越 来越大。现在当用户登录 Amazon 时,将发现整个页面上全是与该用户的消费习惯有关的 商品。 在本章中,您将学习怎样使用 ASP.NET 2.0 提供的成员关系功能实现站点的个性化。 本章讨论如下内容: ● 身份、验证和授权的概念 ● 成员关系服务器变量,包括 Login 控件 ● 保存成员配置文件以便取回 ● 在站点的特定部分实施访问限制,只运行特定的成员访问 ● 根据当前用户配置文件个性化站点 还将扩展 Wrox United 示例站点,以便能够登录该站点并根据一组保存起来的个人偏 好个性化站点,这些信息是基于成员配置文件的。 4.1 安全基础知识 在开始开发涉及到成员关系的应用程序时,必须首先理解几个关键的概念,这些概念 是身份、验证和授权。 4.1.1 身份——我是谁 在考虑身份时,我们可以用几种独一的特性来描述自己。例如,我是一个头发金黄的 ASP.NET 2.0 入门经典(第 4 版) 女人,喜欢看科幻电影和组装 PC 机,但这些信息对于对我的羽毛球技术感兴趣的人来说 并不是必需的。保存在站点中的身份信息很可能只与一个人的某些方面相关。例如,一个 购物站点会保存用户的姓名、电话号码、电子邮件地址和家庭地址,这些信息都与商品的 销售有关。它们可能不会关心您的个人兴趣(除非它们和 Amazon 的规模一样大) ,所以它 们并不需要保存关于用户的这类信息,但是这并不妨碍它们拥有这些方面的身份信息。 因此身份,也就是我是谁的概念,是一组范围很广的实际情况的集合。您可能曾经在 简历里写下了很多实际情况,但这些情况同样只与潜在的雇主相关。在简历中保存和删除 哪些情况由自己决定。在保存一个站点的成员的信息时,情况也是一样的,必须在开发阶 段就确定要保存成员的哪些实际情况。 4.1.2 身份验证——这就是我 在试图登录一个网站的时候,用户要输入某些证书;例如,邮件地址及其口令的组合。 网站接下来必须判断用户是否就是自己声明的那个人,因此用户输入的邮件地址和口令的 组合必须与保存在服务器文件中特定的邮件地址和口令组合相匹配。 身份验证的过程就是证明自己是自己所声明的那个人的过程。很多站点,不论它们是 零售商品还是提供社区服务,都使用邮件地址和口令的组合作为身份验证方法,这是一种 经过反复考验的方法。虽然这种方法不是绝对安全,但是只要选择一个足够可靠的口令并 严格保密,同时站点的代码经过严格的测试,那么用户的配置文件将只能由用户本人使用。 4.1.3 授权——这是我能做的 在向网站输入用户名和口令之后,Web 服务器将不仅会验证口令和用户名是否匹配, 还将查看站点管理员给用户授予了什么权限。身份验证之后的下一个步骤是授权,这个步 骤将检索您所拥有的用户账户类型的更多信息。 例如,以一个银行网站为例。在用户的登录信息通过验证之后,服务器将查看用户在 该站点上的权限。与大多数用户一样,您可以查询账户、在账户之间转账或者支付账单。 然而,如果银行受到某个安全方面的恐吓(类似于 Internet 上到处流传的网络钓鱼(phishing) 电子邮件) ,您可能会发现自己突然无法通过这个在线应用程序添加任何第三方代理订单, 直到安全危机解除为止。功能的
显示全部
相似文档