问题标签 [iidentity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
36319 浏览

c# - 设置线程标识

在 C# 中,如何设置线程的标识?

例如,如果我有 Thread MyThread,它已经启动,我可以更改 MyThread 的身份吗?

或者这是不可能的?

0 投票
1 回答
2386 浏览

openid - 将用户 ID 存储在 Principal 或 Identity 中?ASP.Net/OpenID

我有一个使用表单身份验证的 ASP.Net MVC Web 应用程序。我正在使用 OpenID 进行身份验证。

目前,我将 openID url 存储在Namestandard 中GenericIdentity。我还希望能够轻松访问用户的数据库 ID。

我可以通过覆盖该Application_AuthenticateRequest函数来制作自定义提供者或身份。

我的问题是用户的数据库 uid 应该进入主体还是身份?

Identity 的 Name 属性应该是 openid url(用户可以有很多,但我想在每个页面上显示它)还是数据库 uid?

0 投票
7 回答
80980 浏览

asp.net - HttpContext.Current.User.Identity.Name 总是 string.Empty

嗨,我使用自定义 MembershipProvider。

我想知道应用场景中的当前用户名,但是当我尝试访问 HttpContext.Current.User.Identity.Name 时,它​​总是返回 string.Empty。

我错过了什么吗?

0 投票
9 回答
221835 浏览

asp.net - ASP.NET MVC - 设置自定义 IIdentity 或 IPrincipal

我需要做一些相当简单的事情:在我的 ASP.NET MVC 应用程序中,我想设置一个自定义的 IIdentity / IPrincipal。哪个更容易/更合适。我想扩展默认值,以便我可以调用类似User.Identity.Idand的东西User.Identity.Role。没什么特别的,只是一些额外的属性。

我已经阅读了大量的文章和问题,但我觉得我让它变得比实际更难。我以为这很容易。如果用户登录,我想设置自定义 IIdentity。所以我想,我将Application_PostAuthenticateRequest在我的 global.asax 中实现。但是,在每个请求上都会调用它,并且我不想在每个请求上都调用数据库,因为它会从数据库中请求所有数据并放入自定义 IPrincipal 对象。这似乎也非常不必要,很慢,而且在错误的地方(在那里进行数据库调用),但我可能是错的。或者这些数据还来自哪里?

所以我想,每当用户登录时,我都可以在我的会话中添加一些必要的变量,我将它们添加到Application_PostAuthenticateRequest事件处理程序中的自定义 IIdentity 中。但是,我Context.Sessionnull存在,所以这也不是要走的路。

我已经为此工作了一天,我觉得我错过了一些东西。这应该不难做到,对吧?我也对随之而来的所有(半)相关内容感到有些困惑。MembershipProvider, MembershipUser, RoleProvider, ProfileProvider, IPrincipal, IIdentity, FormsAuthentication.... 我是唯一一个觉得这一切都非常混乱的人吗?

如果有人能告诉我一个简单、优雅、高效的解决方案,可以在 IIdentity 上存储一些额外的数据,而不需要额外的模糊......那就太好了!我知道关于 SO 有类似的问题,但如果我需要的答案在那里,我一定忽略了。

0 投票
2 回答
1773 浏览

unit-testing - 起订量自定义身份

我创建了一个自定义 RoleProvider(标准 web 表单,没有 mvc),我想对其进行测试。提供者本身与 IIdentity 的自定义实现集成(带有一些附加属性)。

我现在有这个:

但是,当我在 VS2008 中运行此测试时,我收到以下错误消息:

不可覆盖成员上的无效设置:id => id.IsAuthenticated

为什么会这样?最重要的是,我需要做什么来解决它?

格兹,克里斯。

0 投票
5 回答
9326 浏览

serialization - 当用户在 ASP.NET 中被拒绝时,“CustomIdentity”上的 SerializationException

我尝试在我们现有的数据库之上实现 ASP.NET 身份验证和授权。我们有一个网站调用网络服务来获取其数据。要使用网络服务,我需要提供用户名和密码。知道了这一点,我决定实现 IIdentity 和 IPrincipal 来存储加密的密码,并能够在执行 web 服务调用时提供它。将来,我们可能希望更多地使用 asp.net 的内置安全性,因此我实现了成员资格和角色提供程序并覆盖了我所需要的(ValidateUser 和 GetRoles)虽然,在验证用户之后感谢成员资格提供程序实现我仍然将我自己的 CustomIdentity 设置为 Context.User 以便能够在需要时检索其密码。

只要允许用户访问该页面,它就可以完美运行。但是当用户被拒绝时,框架不会抛出 AccessDeniedException,而是在我的 CustomIdentity 上抛出序列化异常。我发现了一个完全相似的行为,并在此链接上描述了更多详细信息,但没有发布任何答案。

我的例外与上面的链接完全相同

同时使用成员资格和自定义 IIdentity 和 IPrincipal 是否正确?如果没有,如果我使用成员资格和角色提供者,在哪里添加密码或其他用户数据等属性?

最好的祝福,

斯蒂芬·埃布雷希

0 投票
3 回答
13677 浏览

asp.net-mvc-2 - 在 MVC 中实现自定义身份和 IPrincipal

我有一个基本的 MVC 2 beta 应用程序,我试图在其中实现自定义 Identity 和 Principal 类。

我创建了实现 IIdentity 和 IPrincipal 接口的类,将它们实例化,然后在 Global.asax 的 Application_AuthenticateRequest 中将 CustomPrincipal 对象分配给我的 Context.User。

这一切都成功了,对象看起来不错。当我开始呈现视图时,页面现在失败了。第一个失败是在以下代码行的默认 LogoOnUserControl 视图中:

如果我把它拉出来,那么它会在不同的“Html.ActionLink”代码行上失败。

我收到的错误是:

WebDev.WebHost40.dll 中出现“System.Runtime.Serialization.SerializationException”类型的异常,但未在用户代码中处理

附加信息:未解析成员“Model.Entities.UserIdentity,Model, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null”的类型。

为了在 MVC 中使用自定义身份,我需要在身份中实现一些其他属性吗?我试图在 Identity 类中实现 [Serializable()] 但它似乎没有影响。

更新: 我已经尝试了 3-4 种替代方法来实现这一点,但仍然失败并出现同样的错误。如果我直接使用 GenericIdentity/GenericPrincipal 类,它不会出错。

但这让我无处可去,因为我试图使用 CustomIdentity 来保存几个属性。如果我为我的 CustomIdentity/CustomPrincipal 实现 IIdentity/IPrincipal 接口或继承 GenericIdentity/GenericPrincipal ,则会出现上述原始错误。

0 投票
1 回答
683 浏览

security - 您如何覆盖 WCF AuthenticationService IsLoggedIn() 方法?

我目前对如何做到这一点有三个想法:

  1. 重新实现 AuthenticationService,它使用了大量的内部构造函数和内部帮助函数,
  2. 实现自定义 IIdentity 和 IPrincipal 类型,并以某种方式将它们挂钩到 FormsAuthentication。
  3. 放弃并滚动我自己的。

问题是我们有使用身份验证和存储 cookie 的 Web 应用程序和胖客户端应用程序。但是,注销 Web 应用程序并不会注销胖客户端应用程序,而且我们现在可以强制刷新 cookie,atm。

0 投票
2 回答
1389 浏览

asp.net-mvc - 自定义 IIdentity 并将数据从属性传递到控制器

这是我的场景:

我已成功创建了一个自定义 IIdentity,并将其传递给 GenericPrincipal。当我在控制器中访问该 IIdentity 时,我必须强制转换 IIdentity 才能使用自定义属性。例子:

由于我需要对几乎每个动作都进行此转换,因此我想将此功能包装在 ActionFilterAttribute 中。我不能在控制器的构造函数中这样做,因为上下文尚未初始化。我的想法是让 ActionFilterAttribute 在控制器上填充一个私有属性,我可以在每个操作方法中使用它。例子:

问题:这可能吗?如何?有更好的解决方案吗?我绞尽脑汁想弄清楚如何将属性中填充的公共属性传递给控制器​​,但我无法得到它。

0 投票
1 回答
935 浏览

security - MVC2 :: 我如何*使用*自定义 IIdentity 类?

我正在尝试从网络服务中存储有关用户的一整车信息。由于这是有关当前经过身份验证的用户的信息,我认为将这些信息存储在自定义 IIdentity 实现中是有意义的。

自定义MagicMembershipProvider.GetUser(string id, bool userIsOnline)调用 web 服务并返回一个MagicMembershipUser填充了所有字段(部门、电话号码、其他员工信息)的实例。

自定义会员提供者和自定义会员用户都可以正常工作。

将会员用户信息放入每个控制器都可以访问的对象中的最佳方法是什么以及在哪里?IPrincipal User

我一直在尝试用 MVC2 应用程序中的 IIdentity、IPrincipal 和 Role 授权来围绕安全程序流进行思考——但我在这里真的很挣扎,可以使用一些指导。互联网上有大量关于部分的文章,但关于整体的文章不多。

编辑

到目前为止,我最好的猜测是分配HttpContext.Current.Userin FormsAuthenticationService