问题标签 [usermanager]
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.
entity-framework - 如何在 ASP.NET Core 3.1 的另一个应用程序中包含用户管理器
我正在开发两个不同的应用程序,我将它们命名为 A 和 B。
- A 是一个互联网平台,只有拥有有效用户帐户才能登录。
- B 是一个 Intranet 平台,用户可以在其中通过 Active Directory 进行身份验证。使用应用程序 B 的管理员应该能够为应用程序 A 创建新的用户帐户。
创建新用户帐户后,我希望能够实现不同的功能,例如向注册的邮件地址发送电子邮件,以便新用户可以更改默认密码。
我想要实现的所有功能都可以由UserManager完成(请参阅以下链接中的“使用另一个应用程序添加用户”部分:https ://docs.microsoft.com/en-us/aspnet/core/security /authentication/scaffold-identity?view=aspnetcore-3.1&tabs=visual-studio#disable-register-page)。
基于此,我实现了以下代码:
不幸的是,我没有设法将UserManager包含到我的应用程序 B 中。我收到以下错误消息:“处理请求时发生未处理的异常。InvalidOperationException:无法解析类型'Microsoft.AspNetCore.Identity.UserManager`1 的服务[IdentityUser]' 在尝试激活 'ControllerClass' 时。”
您有什么想法,我如何添加UserManager来管理另一个应用程序的用户?
asp.net-core - 是否有任何内置管理器用于处理来自 ConfigurationDbContext(Clients, Resources...) 的表的 CRUD 操作?
我对这些东西很陌生,所以我在理解和弄清楚使用哪种方法时遇到了一些问题。
目前,我在我的项目中使用 .NET Core 3.1 和 IdentityServer4。我正在配置我的授权服务器,并且我有一些用于创建用户、客户端等的控制器。
在处理用户的控制器中,我使用 UserManager 进行所有 CRUD 操作。这比使用 dbContext 更好吗?我也创建了用于处理客户端的控制器。为此,我使用了 ConfigurationDbContext,因为我还没有找到某种内置管理器来处理这个问题。
你有更好的解决方案吗?我正在考虑为此创建经理。有没有这样的例子?我想创建以类似方式运行的控制器,以具有类似的行为、响应结果、验证等。
感谢您的帮助。
c# - userManager.GetRolesAsync(user) 扩展 IdentityRole 后返回空列表
我需要向 IdentityRole 添加一个 List 属性以建立多对多关系。完成此操作并运行代码优先迁移后,一切似乎都很好。但是,现在当我尝试为用户提取角色时,即使我可以看到它们存在于数据库中,结果也始终为空。知道为什么会发生这种情况吗?
c# - 如何获取 userManager.VerifyUserTokenAsync 的目的字段?
当我尝试重置密码时,我正在使用userManager.VerifyUserTokenAsync(user, tokenProvider, purpose, token)
但它总是返回错误。我怀疑该purpose
字段是错误的,但我不确定实际应该去那里。我的问题是,我如何获得该purpose
领域?从我看到的一些示例中,人们将其设置为“ResetPassword”。这是正确的还是我错过了什么?
谢谢!
启动.cs
谢谢
c# - 如何修复 ApplicationUserManager 中的“LINQ to Entities 中不支持指定的类型成员‘UserId’”
我目前正在开发一个较旧的 MVC 5 网站,该网站最初使用带有实体框架的代码优先生成的数据库。它已被转换为 db-first,重构,我现在正在删除旧的实体 c# 文件并用 ADO.net 的实体框架替换它们。
我目前遇到的问题是在登录时,我在 ApplicationUserManager 中点击了以下行(它派生自 UserManager(TUser, TKey)):
var user = await UserManager.FindByEmailAsync(model.Email);
我收到以下错误:“ LINQ to Entities 不支持指定的类型成员 'UserId'。仅支持初始化程序、实体成员和实体导航属性。 ”
镜像 db 表的 ApplicationUser 实体使用变量“Id”而不是“UserId”。我覆盖了有问题的方法并且它有效,但是每当我们需要使用 UserManager 时我不想这样做。所以我想我很困惑,UserManager 是否需要将变量命名为“UserId”?如果没有,我怎么能告诉它使用'Id'?
我认为我没有遗漏任何东西(比如在某处的 LINQ 语句中意外添加了“UserId”)。
entity-framework - userManager.GetRolesAsync() 返回角色列表,但 userManager.GetUsersInRoleAsync() 返回空列表
问题
下面的代码获取用户的角色,但不获取该特定角色的用户。有什么遗漏吗?
代码
按用户获取角色和按角色获取用户
android - 在 UserManager.DISALLOW_ADJUST_VOLUME 用户权限处于活动状态时允许声音
我正在为 COSU 设备构建应用程序。我的代码基于 Google 提供的以下示例:
Codelabs.developers.google.com/cosu
其中LockedActivity
有以下一段代码:
在active == true
上面的代码段中,音量按钮由于setUserRestriction(UserManager.DISALLOW_ADJUST_VOLUME, true)
. 但是,这也会使主音量静音(在此处记录)。这会阻止我的应用程序播放任何声音。就个人而言,我认为最好将音量简单地冻结在它的水平,或者如果音量至少可以通过编程方式进行配置(似乎并非如此)。
我可以以编程方式覆盖音量增大/减小按钮,但这感觉更像是一种解决方法/黑客(例如,这里完成)。
所以我的问题是:有没有办法在将UserManager.DISALLOW_ADJUST_VOLUME
用户权限设置为 true 的同时取消主音量的静音?或者有什么体面的解决方法吗?
asp.net-core - ASP.Net Core Identity - 管理其他用户
我已经自定义了默认用户身份并创建了几个用户。假设我是管理员并且我想管理其他用户信息(更改属性值)。如果我有他们的 ID,我如何访问其他用户的数据。
我可以检索表中的所有用户并在“asp-route-id”中获取他们的 ID
使用 userManager 检索\更新 Get & Post 方法中的其他用户信息时,我被卡住了。
javascript - 将 JavaScript 客户端添加到 IdeniityServer4 并使用用户名和密码进行日志记录
我的问题陈述是:用户将登录到 IdentityServer,使用 IdentityServer 发出的访问令牌调用 Web API,然后注销 IdentityServer。所有这些都将由在浏览器中运行的 JavaScript 驱动。
我找到的最接近的链接是https://docs.identityserver.io/en/latest/quickstarts/4_javascript_client.html
我要求您在回答之前通过链接。现在,我有一个 API /connect/token,它接受用户名、密码、client_id、client_secret、scope 和 grant_type 并返回一个 access_token 然后我将该访问令牌用于其他所有请求作为授权承载。
如何使用 UserManager 将我的 API 与 OIDC 集成?
该链接表示它使用以下代码登录用户,但我无法理解它如何在不获取其凭据的情况下登录用户?
接下来,UserManager 提供了一个 getUser API 来了解用户是否登录到 JavaScript 应用程序。它使用 JavaScript Promise 异步返回结果。返回的 User 对象有一个 profile 属性,其中包含用户的声明。添加此代码以检测用户是否登录到 JavaScript 应用程序:
接下来,我们要实现登录、api 和注销功能。UserManager 提供了一个 signinRedirect 来让用户登录,以及一个 signoutRedirect 来让用户注销。我们在上述代码中获得的 User 对象还有一个 access_token 属性,可用于对 Web API 进行身份验证。access_token 将通过带有承载方案的授权标头传递给 Web API。添加此代码以在我们的应用程序中实现这三个功能:
我正在寻找这样的东西(作为响应,mgr 应该包含用户和 access_token):
asp.net-core - 我们如何在不使用泛型类型进行自定义的情况下处理身份核心用户管理和用户存储的多个用户使用情况?
我们有一个多租户架构,有多个用户,如下所示,带有身份核心库:
在注入 usermanager 时,我们希望在控制器构造函数中一般使用 UserManager,因为我们不想使用低于租户数的可能会变得越来越大,并且控制器将充满 usermanager 注入:
我们想像 UserManager 一样使用,但这种实现以错误结束,我们不想自定义 UserManager,因为默认功能对我们来说没问题,我们只想通用处理不同类型的用户。我们怎么能处理这种情况呢?谢谢你。