asp.net核心2,具有Windows身份验证但具有数据库托管角色的身份

时间:2018-08-14 11:58:18

标签: asp.net asp.net-core asp.net-identity windows-authentication

由于@ jim-karnopp,我有一个自定义IClaimsTransformation。除了我尝试将用户添加到尚不存在的数据库之外,其他所有方法似乎都可以正常工作。

var user = identity.Name

AppUser newuser = new AppUser()
            {
                UserName =  user,
                EmailConfirmed = false,
                PhoneNumberConfirmed = false,
                TwoFactorEnabled = false,
                LockoutEnabled = false,
                AccessFailedCount = 0
            };

            var createUser = await _userManager.CreateAsync(newuser);

是否有更好的方法将经过Windows身份验证的用户添加到身份数据库?我目前收到“ InvalidUserName”“只能包含字母和数字”错误。因为identity.name等于DOMAIN\\username

是否可以将经过Windows身份验证的用户名存储在身份数据库中?

谢谢

1 个答案:

答案 0 :(得分:3)

Configure用户名验证者允许。

services.AddIdentity<ApplicationUser, IdentityRole>(options => {
    options.User.AllowedUserNameCharacters = "allowed characters here";
});