【发布时间】:2021-03-18 14:23:45
【问题描述】:
我将身份用户派生为
public class MyAppUser : IdentityUser
{
public MyAppUser () : base() { }
public MyAppUser (string userName) : base(userName) { }
public string FirstName { get; set; }
public string LastName { get; set; }
public string CurrentAddress { get; set; }
}
我还在声明中添加了所有这些属性值,以便我们可以将这些值发送给用户以查看详细信息。
await UsersRepository.AddClaimAsync(appuser, new Claim("firstName", "MyName"));
await UsersRepository.AddClaimAsync(appuser, new Claim("lastName", "MyLastName"));
await UsersRepository.AddClaimAsync(appuser, new Claim("currentAddress", "MyAddress"));
这里有两个问题
问题 1:- 值在两处重复。
- 与 MyAppUser
- 与声明
问题:-这是正确的方法吗?如果没有,最好的实现方法是什么?
问题 2:- 我想为用户提供一个选项来更新其自己的信息,例如 CurrentAddress 或 FirstName 或 姓氏。
问题:-
解决上述问题的一种方法是向所有用户授予 admin api 端点访问权限。但这是正确的方法吗?在 IdentityServer 中实现这一点的最佳方法是什么。
【问题讨论】:
标签: c# api oauth-2.0 identityserver4 openid-connect