首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我们要选择PrincipalPermission而不是IsInRole()?

为什么我们要选择PrincipalPermission而不是IsInRole()?
EN

Stack Overflow用户
提问于 2009-05-10 20:55:09
回答 1查看 1.1K关注 0票数 0

Q1 -我不知道为什么我们更喜欢使用PrincipalPermission.Union() (或PrincipalPermission.Intersect() )而不是IsInRole()?如果有什么需要的话,那么多次调用IsInRole()比创建多个PrincipalPermission对象并通过Union() (或Intersect() )将它们合并成一个对象所需要的代码更少?

Q2 -- PrincipalPermission对象的一个构造函数重载还指定了一个IsAuthenticated标志,该标志告诉IsAuthenticated()来验证用户是否经过身份验证。在前两个参数(名称和角色)都为空的情况下,使用该标志不是很有用吗?

萨克斯

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2009-05-10 21:05:00

Q1。- RE: PrincipalPermission方法与IPrincipal.IsInRole(.)

这两个函数调用使PrincipalPermission具有您赋予它的角色的联合或交集。因此,您将得到一个主体,它具有非常特定的一组需求,然后可以调用IsInRole()。请注意,这样做会影响您的角色提供程序,它可能是一个SQL服务器或活动目录,因此涉及到延迟,所以您不想一直这样做。

Q2。- RE: PrincipalPermission认证

身份验证表示用户已向您的提供程序登录。如果您只需要对您的应用程序进行审核,确认用户已登录到您的角色提供程序将意味着您可以记录他们是谁等。

您正确地说,只有在您不关心用户是谁的情况下,它才是有用的,只有当用户登录时才有用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/846087

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档