首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >创建新用户时添加声明

创建新用户时添加声明
EN

Stack Overflow用户
提问于 2016-09-20 00:32:16
回答 1查看 16.2K关注 0票数 22

我正在使用ASP.NET核心身份创建一个新用户,如下所示:

代码语言:javascript
复制
new User {
  Email = "john@company.com",
  Name = "John"
}

await userManager.CreateAsync(user, "password");

我需要在创建用户时添加一个索赔。我试过了:

代码语言:javascript
复制
new User {
  Email = "john@company.com",
  Name = "John",
  Claims = new List<Claim> { /* Claims to be added */ }  
}

但Claims属性为只读。

做这件事最好的方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-20 03:32:24

您可以使用UserManager<YourUser>.AddClaimAsync方法向您的用户添加索赔

代码语言:javascript
复制
var user = new User {
  Email = "john@company.com",
  Name = "John"
}

await userManager.CreateAsync(user, "password");

await userManager.AddClaimAsync(user, new System.Security.Claims.Claim("your-claim", "your-value"));

或将声明添加到用户Claims集合

代码语言:javascript
复制
var user = new User {
  Email = "john@company.com",
  Name = "John"
}

user.Claims.Add(new IdentityUserClaim<string> 
{ 
    ClaimType="your-type", 
    ClaimValue="your-value" 
});

await userManager.CreateAsync(user);
票数 44
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39577906

复制
相关文章

相似问题

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