コード例 #1
0
        public void TestPasswordExpiryCalculator(bool passwordExpired, int remindPasswordExpiryInDays, TimeSpan?maxPasswordAge, int expectedDays)
        {
            //Arrange
            var user = new ApplicationUser
            {
                LastPasswordChangedDate = DateTime.UtcNow.AddDays(-20),
                PasswordExpired         = passwordExpired
            };

            var userOptionsExtended = new UserOptionsExtended
            {
                RemindPasswordExpiryInDays = remindPasswordExpiryInDays,
                MaxPasswordAge             = maxPasswordAge
            };

            //Act
            var daysTillPasswordExpiry = PasswordExpiryHelper.ContDaysTillPasswordExpiry(user, userOptionsExtended);

            //Assert
            Assert.Equal(expectedDays, daysTillPasswordExpiry);
        }
コード例 #2
0
        public async Task <ActionResult <UserDetail> > GetCurrentUser()
        {
            var user = await _userManager.FindByNameAsync(User.Identity.Name);

            if (user == null)
            {
                return(NotFound());
            }

            var result = new UserDetail
            {
                Id = user.Id,
                isAdministrator        = user.IsAdministrator,
                UserName               = user.UserName,
                PasswordExpired        = user.PasswordExpired,
                DaysTillPasswordExpiry = PasswordExpiryHelper.ContDaysTillPasswordExpiry(user, _userOptionsExtended),
                Permissions            = user.Roles.SelectMany(x => x.Permissions).Select(x => x.Name).Distinct().ToArray()
            };

            return(Ok(result));
        }