早教吧 育儿知识 作业答案 考试题库 百科 知识分享

很简单的一道ASP.NET题目,角色访问问题。在一个子目录的web。config文件中有如下一段代码:〈authorization〉〈allowroles=“admin”/〉〈allowroles=“manager”/〉

题目详情
很简单的一道ASP.NET题目,角色访问问题。
在一个子目录的web。config文件中有如下一段代码:
〈authorization〉
   〈allow roles=“admin”/〉
   〈allow roles=“manager”/〉
   〈deny users=“*”/〉
   〈allow roles=“sales”/〉
〈/authorization〉
允许访问此子目录下的网页的角色有:
A.admin
B.manager
C.admin 和 manager
D.admin、 manager和sales
▼优质解答
答案和解析
前面二位都不对,应该是C,摘自MSDN:
运行时,授权模块从最本地的配置文件开始,循环访问 allow 和 deny 元素,直到它找到适合特定用户帐户的第一个访问规则。 然后,该授权模块根据找到的第一个访问规则是 allow 还是 deny 规则来允许或拒绝对 URL 资源的访问。 默认的授权规则为 。 因此,默认情况下允许访问,除非另外配置。
星号(*)对应所有用户
问号(*)对应匿名用户
拒绝所有用户之后的授权策略全部都会无效,好好品品上面这段话就能理解。
给你提个建议,你的代码中的尖括号、问号、空格、等号、引号、星号全是全角的,结果我直接复制过来测试时还要自己改,这是个很不好的习惯,我不知道你这代码是从哪抄来的,但是C#的语法中这些符号都应该是半角的,计算机是不会忽略这些小错误的,想做好程序先从小细节做起。