Hello,

I noticed that Radiator did not detect when an account is Expired or Locked
(this is different from disabled) in the NT SAM
May I suggest the following addition to the AuthNT.pm module:

require Win32::AdminMisc;
import Win32::AdminMisc;

     # #########################################################
     # insert this part on line 156 in AuthNT.pm (just after the "Account is
disabled" condition )
     # #########################################################
     elsif ($Getflags & &UF_LOCKOUT)
     {
  return ($main::REJECT, "Account is Locked");
     }
     my %HashMiscAttributes;
     if ( Win32::AdminMisc::UserGetMiscAttributes($self->{DomainController},
$user_name, \%HashMiscAttributes))
     {
  if ($HashMiscAttributes{USER_ACCT_EXPIRES} < time)
  {
  return ($main::REJECT, "Account is Expired");
  }
     }
   #  ##########################################################

Although this addition will make AuthNT more usefull, I feel It would be
much cleaner to find a way to send the UserName/Password combo to the
DomainController in order to do the checking internally.
I am very surprised there are no functions available to authenticate a user
against NT SAM





===
Archive at http://www.thesite.com.au/~radiator/
To unsubscribe, email '[EMAIL PROTECTED]' with
'unsubscribe radiator' in the body of the message.

Reply via email to