Пример #1
0
        public UserAuthProfile GetUserProfile(ClaimsIdentity identity)
        {
            var profile = new UserAuthProfile();

            var claimName       = identity.Claims.FirstOrDefault(x => x.Type == ClaimTypes.NameIdentifier);
            var claimRole       = identity.Claims.FirstOrDefault(x => x.Type == ClaimTypes.Role);
            var claimPermission = identity.Claims.FirstOrDefault(x => x.Type == "permission");
            var claimUserID     = identity.Claims.FirstOrDefault(x => x.Type == "userID");
            var claimGroupID    = identity.Claims.FirstOrDefault(x => x.Type == "groupID");
            var claimEmail      = identity.Claims.FirstOrDefault(x => x.Type == ClaimTypes.Email);
            var claimPhone      = identity.Claims.FirstOrDefault(x => x.Type == "phone");

            profile.Name    = claimName != null ? claimName.Value : string.Empty;
            profile.RoleIDs = claimRole != null?JsonConvert.DeserializeObject <List <long> >(claimRole.Value) : new List <long>();

            profile.Permissions = claimPermission != null
                                    ? JsonConvert.DeserializeObject <ICollection <UserAuthPermission> >(claimPermission.Value)
                                    : new HashSet <UserAuthPermission>();

            profile.UserID = claimUserID != null?Convert.ToInt64(claimUserID.Value) : 0;

            profile.GroupID = claimGroupID != null?Convert.ToInt64(claimGroupID.Value) : 0;

            profile.Email = claimEmail != null ? claimEmail.Value : "";
            profile.Phone = claimPhone != null ? claimPhone.Value : "";

            return(profile);
        }
Пример #2
0
        public void TokenGeneratorExtensionsTests_should_throw_if_argument_is_null(BearerOptions options, UserAuthProfile userAuthProfile)
        {
            //Act
            Action action = () => options.GenerateToken(userAuthProfile);

            //Assert
            action.Should().Throw <ArgumentNullException>();
        }