home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #16 / NN_1992_16.iso / spool / vmsnet / internal / 1113 < prev    next >
Encoding:
Internet Message Format  |  1992-07-23  |  1.8 KB

  1. Path: sparky!uunet!olivea!decwrl!decwrl!simpact!mvb.saic.com!macro32
  2. From: DWING@UH01.Colorado.EDU (Dan Wing)
  3. Newsgroups: vmsnet.internals
  4. Subject: Re: Need: Captive USR Pwd Procedure
  5. Message-ID: <01GMPWK8SH9U00005L@VAXF.COLORADO.EDU>
  6. Date: 23 Jul 92 19:18:47 GMT
  7. Organization: Macro32<==>Vmsnet.Internals Gateway
  8. Lines: 46
  9. X-Gateway-Source-Info: Mailing List
  10.  
  11. Tom, vaughan@sjh.ORG, writes:
  12.  
  13. >Has anyone seen a *good* command procedure or program that can be run in a
  14. >captive environment to let the user set their password?   Security is the
  15. >first and last concern, but I don't want them out to DCL (hence VMS wacks
  16. >off their heads) because they will leave other things undone and data gets
  17. >messed up, or better yet the software won't let them back in.
  18.  
  19. I can't say this is "good", but its what we use...  It allows the user a
  20. few attempts to try to change it, and tells the user when they actually
  21. changed it (something I wish SET PASSWORD did by itself).
  22.  
  23. -Dan Wing, DWING@UH01.Colorado.EDU or WING_D@UCOLMCC.BITNET (DGW11)
  24.  Systems Programmer, University Hospital, Denver
  25.  
  26. -----
  27.  
  28. $  WRITE SYS$OUTPUT ""
  29. $  WRITE SYS$OUTPUT "You are about to change your VMS password -- this is the
  30. password"
  31. $  WRITE SYS$OUTPUT "you enter after typing your username (", -
  32.      F$GETJPI(0,"USERNAME"), ")."
  33. $  WRITE SYS$OUTPUT ""
  34. $  COUNT = 1
  35. $_CHOICE_2_LOOP:
  36. $
  37. $  WRITE SYS$OUTPUT ""
  38. $  DEFINE/USER_MODE SYS$INPUT SYS$COMMAND
  39. $  SET noON
  40. $  SET PASSWORD
  41. $  STATUS = $STATUS
  42. $  SET ON
  43. $
  44. $  IF STATUS
  45. $  THEN
  46. $    WRITE SYS$OUTPUT "Your password has been changed."
  47. $  ELSE
  48. $    IF STATUS .NE. %X107780E4     ! locked password
  49. $    THEN
  50. $      COUNT = COUNT + 1
  51. $      IF COUNT .EQ. 3 THEN WRITE SYS$OUTPUT "You have one more attempt"
  52. $      IF COUNT .LE. 4 THEN GOTO _CHOICE_2_LOOP
  53. $      WRITE SYS$OUTPUT "You exceeded the password-change retry limit"
  54. $    ENDIF
  55. $  ENDIF
  56. $
  57.