Jump to content
Sign in to follow this  
flyingboz

non-admin users change own active directory password

Recommended Posts

I'm looking at a situation where a client has an application deployed via RemoteApp, no full RDP desktop or web interface available.  As the RemoteApp is published on a network share, it is invoked via a batch file, launched via a published .rdp file.

I've run into an issue with being able to allow users to change their own passwords.  I don't want to have to deal with changing users passwords, or knowing what they are; if I expire or require a password change, the users are simply locked out, there is no opportunity for them to change their password themselves.

Ideally, I'd like to write or find a command line utility I could insert into the batch file that launches the remote app to address this deficiency.

I've poked around in the ActiveDirectory UDF, which seems to be a great tool, but without a function written for the use case where the password change is desired to be forced upon the current user ( who is NOT an admin).  

Note:  net user / domain requires admin rights.  
           pspasswd, while awesome, also requires admin rights.

Does anyone have a UDF or Function utility that they use to allow a user to change their own domain password from the command line?

I've seen a couple of powershell examples, but I'd love to be able to compile or drop in a command line oriented  passwd.exe utility that would work similarly to the *nix equivalent.  

The pspasswd sysinternals utility does not seem to  have this use case in mind -- in my tests you have to be an admin to change a password.

Edited by flyingboz

Reading the help file before you post... Not only will it make you look smarter, it will make you smarter.

Share this post


Link to post
Share on other sites

I've worked with a number of third party applications that allow single sign on as well as self-unlock and self-password reset for non-admin users. In all cases, the application uses a service account that has the rights to perform the action.

While this works, it is not ideal in AutoIt. In essence you would be doing a RunAs, and embedding credentials into a script that could be opened with minimal effort.


"Profanity is the last vestige of the feeble mind. For the man who cannot express himself forcibly through intellect must do so through shock and awe" - Spencer W. Kimball

How to get your question answered on this forum!

Share this post


Link to post
Share on other sites

Thanks for the reply / insight.  I'm not interested particularly in anything more than a command line interface to allow the user to change their own password.  While single-sign on has its uses, its not really germane to the core topic.

If I give users full remote desktop access they have the permissions to change their password via the GUI.  At its most basic, there should be a command line equivalent that asks the user to enter their old password, then their new one w/ confirmation.  Conceptually, there shouldn't need to be any additional proof that the user is who they say they are, they've already been authenticated, and the remoteapp started.

I don't think I should need a service or other 'trickery' involved, because I have access to the user environment  -- I am setting the user default printer in the batch script that runs each time they initiate the remoteapp.


Reading the help file before you post... Not only will it make you look smarter, it will make you smarter.

Share this post


Link to post
Share on other sites

While this works, it is not ideal in AutoIt. In essence you would be doing a RunAs, and embedding credentials into a script that could be opened with minimal effort.

 

Time ago, searching in Google for RunAs, in order to find some way to hide a pasword from usual users executing Admin tasks, is when i found and started to use Autoit.

 Now, i have several big projects growing for years, working fine and developped in AutoiT, that is better and gives me much more posibilities than i expected. :)

After fighting vs UAC for 9 months, because a migration from XP, and winning to NamedPipes this week, i am allmost happy.

Cheers. :shifty:


My english shucks, i know it.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By Hemrry
      Good evening I am new to programming with AutoIt however I have proposed many projects in this case I already have my code completed and it works correctly but I cannot find a way to assign a password and I try various options but it does not work could you help me please
       
       
      #include <GUIConstantsEx.au3> #include <ButtonConstants.au3> #include <EditConstants.au3> #include <StaticConstants.au3> #include <GUIConstants.au3> #include <WindowsConstants.au3> ; Botones Dim $Cban, $Cei, $Fav, $Sent, $Cabe, $Dirtv, $Bonu, $TM, $Pass, $OK, $Exit ;Ventanas Dim $VPinc, $VCban, $VCei, $VFav, $VSent, $VCaribe, $VDirectv, $Vbonus, $VTM, $Vcont ;Boton Atras Dim $Atras, $Atras1, $Atras2, $Atras3, $Atras4, $Atras5,$Atras6,$Atras7 ;Botones Copiar Dim $copi, $copi1, $copi2, $copi3, $copi4, $copi5, $copi6, $copi7, $copi8, $copi9, $copi10, $copi11, $copi12 Dim $copi12, $copi13, $copi14, $copi15, $copi16, $copi17, $copi18, $copi19, $copi20,$copi21,$copi22,$copi23 Dim $Imf = "00000000000" Dim $Imf1 = "00000000000" Dim $Imf2 = "00000000000" Dim $Imf3 = "00000000000" Dim $Imf4 = "00000000000" Dim $imf11= "00000000000" Dim $imf12= "00000000000" Dim $Imf17= "00000000000" Dim $Imf18= "00000000000" Dim $Imf19= "00000000000" Dim $Imf20= "00000000000 " Dim $Imf21= "00000000000" Dim $Imf22= "00000000000" ;Imformacion Dim $Imf5 = "00000000000" Dim $Imf6 = "00000000000" ;Imformacion Dim $Imf7 = "00000000000" Dim $Imf8 = "00000000000" ;Imformacion Dim $Imf9 = "00000000000" Dim $Imf10 = "00000000000" ;Imformacion Dim $imf13 = "00000000000" Dim $imf14 = "00000000000" Dim $imf15 = "00000000000" Dim $imf16 = "00000000000" Dim $imf23 = "00000000000" ;Funciones Principales Prin () Cuentas () Correo () Seniat () Faov () Bancaribe () Bonus () AirTm () Directv () GUISetState(@SW_HIDE,$VCban) GUISetState(@SW_HIDE,$VCei) GUISetState(@SW_HIDE,$VFav) GUISetState(@SW_HIDE,$VSent) GUISetState(@SW_HIDE,$VCaribe) GUISetState(@SW_HIDE,$VBonus) GUISetState(@SW_HIDE,$VTM) GUISetState(@SW_HIDE,$VDirectv) Selec () Func Selec () while 1 $msg=GUIGetMsg() Select Case $msg=$GUI_EVENT_CLOSE $x = 1 if WinActive($VPinc) and $x = 1 then ExitLoop endif if WinActive($VCban) then GUISetState(@SW_HIDE,$VCban) GUISetState(@SW_SHOW,$VPinc) $x = 0 endif if WinActive($VCei) then GUISetState(@SW_HIDE,$VCei) GUISetState(@SW_SHOW,$VPinc) $x = 0 endif if WinActive($VFav) then GUISetState(@SW_HIDE,$VFav) GUISetState(@SW_SHOW,$VPinc) $x = 0 endif if WinActive($VSent) then GUISetState(@SW_HIDE,$VSent) GUISetState(@SW_SHOW,$VPinc) $x = 0 endif if WinActive($VBonus) then GUISetState(@SW_HIDE,$VBonus) GUISetState(@SW_SHOW,$VCban) $x = 0 endif if WinActive($VTM) then GUISetState(@SW_HIDE,$VTM) GUISetState(@SW_SHOW,$VCban) $x = 0 endif if WinActive($VCaribe) then GUISetState(@SW_HIDE,$VCaribe) GUISetState(@SW_SHOW,$VCban) $x = 0 endif if WinActive($VDirectv) then GUISetState(@SW_HIDE,$VDirectv) GUISetState(@SW_SHOW,$VPinc) $x = 0 endif Case $msg = $Cban IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "1") GUISetState(@SW_HIDE,$VPinc) Cuentas() Case $msg = $Cei IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "2") GUISetState(@SW_HIDE,$VPinc) Correo() Case $msg = $Fav IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "3") GUISetState(@SW_HIDE,$VPinc) Faov() Case $msg = $Sent IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "4") GUISetState(@SW_HIDE,$VPinc) Seniat() Case $msg = $Cabe IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "5") GUISetState(@SW_HIDE,$VCban) Bancaribe() Case $msg = $Bonu IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "6") GUISetState(@SW_HIDE,$VCban) Bonus() Case $msg = $TM IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "7") GUISetState(@SW_HIDE,$VCban) AirTm() Case $msg = $Dirtv IniWrite("Data\OPT.INI", "GENERAL", "BUTTON", "8") GUISetState(@SW_HIDE,$VPinc) Directv() Case $msg=$Atras GUISetState(@SW_HIDE,$VCban) GUISetState(@SW_SHOW,$VPinc) Case $msg=$Atras1 GUISetState(@SW_HIDE,$VCaribe) GUISetState(@SW_SHOW,$VCban) Case $msg=$Atras2 GUISetState(@SW_HIDE,$VCei) GUISetState(@SW_SHOW,$VPinc) Case $msg=$Atras3 GUISetState(@SW_HIDE,$VFav) GUISetState(@SW_SHOW,$VPinc) Case $msg=$Atras4 GUISetState(@SW_HIDE,$VSent) GUISetState(@SW_SHOW,$VPinc) Case $msg=$Atras5 GUISetState(@SW_HIDE,$VDirectv) GUISetState(@SW_SHOW,$VPinc) Case $msg=$Atras6 GUISetState(@SW_HIDE,$VBonus) GUISetState(@SW_SHOW,$VCban) Case $msg=$Atras7 GUISetState(@SW_HIDE,$VTM) GUISetState(@SW_SHOW,$VCban) Case $msg=$Copi ClipPut ($Imf) Case $msg=$Copi1 ClipPut ($Imf1) Case $msg=$Copi2 ClipPut ($Imf2) Case $msg=$Copi3 ClipPut ($Imf3) Case $msg=$Copi4 ClipPut ($Imf4) Case $msg=$Copi5 ClipPut ($Imf5) Case $msg=$Copi6 ClipPut ($Imf6) Case $msg=$Copi7 ClipPut ($Imf7) Case $msg=$Copi8 ClipPut ($Imf8) Case $msg=$Copi9 ClipPut ($Imf9) Case $msg=$Copi10 ClipPut ($Imf10) Case $msg=$Copi11 ClipPut ($Imf11) Case $msg=$Copi12 ClipPut ($Imf12) Case $msg=$Copi13 ClipPut ($Imf13) Case $msg=$Copi14 ClipPut ($Imf14) Case $msg=$Copi15 ClipPut ($Imf15) Case $msg=$Copi16 ClipPut ($Imf16) Case $msg=$Copi17 ClipPut ($Imf17) Case $msg=$Copi18 ClipPut ($Imf18) Case $msg=$Copi19 ClipPut ($Imf19) Case $msg=$Copi20 ClipPut ($Imf20) Case $msg=$Copi21 ClipPut ($Imf21) Case $msg=$Copi22 ClipPut ($Imf22) Case $msg=$Copi23 ClipPut ($Imf23) EndSelect WEnd EndFunc Func Prin () ;ventana Principal $VPinc = GUICreate("Imformacion de Cuentas", 490, 122, -1, -1, $WS_POPUP) ;Selecciones del menu $Cban = GUICtrlCreateButton("Cuentas Bancarias", 16, 30, 73, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 10, 500, 2, "Times New Roman") GUICtrlSetCursor (-1, 0) $Cei = GUICtrlCreateButton("Correo elctronico", 112, 30, 73, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 10, 500, 2, "Times New Roman") GUICtrlSetCursor (-1, 0) $Fav = GUICtrlCreateButton("Faov", 208, 30, 73, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 10, 500, 2, "Times New Roman") GUICtrlSetCursor (-1, 0) $Sent = GUICtrlCreateButton("Seniat ", 304, 30, 73, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 10, 500, 2, "Times New Roman") GUICtrlSetCursor (-1, 0) $Dirtv = GUICtrlCreateButton("Directv ", 400, 30, 73, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 10, 500, 2, "Times New Roman") GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VPinc) EndFunc Func Cuentas() $VCban = GUICreate("Cuentas Bancarias", 150, 500, -1, -1, $WS_POPUP) $Cabe = GUICtrlCreateButton("Bancaribe", 37, 30, 80, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 12, 500, 2, "Times New Roman") $Bonu = GUICtrlCreateButton("Bonus", 37, 100, 80, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 12, 500, 2, "Times New Roman") $TM = GUICtrlCreateButton("AirTm", 37, 170, 80, 60, $BS_MULTILINE) GUICtrlSetFont(-1, 12, 500, 2, "Times New Roman") $Atras= GUICtrlCreateButton("Atras", 35, 450, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VCban) EndFunc Func Bancaribe() $VCaribe = GUICreate("Bancaribe", 500, 700, -1, -1, $WS_SYSMENU) GUICtrlCreateLabel("Numero de Cuenta:", 10, 20, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 22, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi = GUICtrlCreateButton("Copiar", 390, 21, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Numero de Tarjeta:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 52, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi1 = GUICtrlCreateButton("Copiar", 390, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Pin de tres digitos:", 10, 80, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 82, 100, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi2 = GUICtrlCreateButton("Copiar", 390, 81, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Valid from:0000", 70, 120, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Valid Thru:000", 300, 120, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Conexion Bancaribe", 180, 180, 200, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 240, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 240, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi3 = GUICtrlCreateButton("Copiar", 390, 241, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 270, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 270, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi4 = GUICtrlCreateButton("Copiar", 390, 271, 80, 20) GUICtrlSetCursor (-1, 0) $Atras1 = GUICtrlCreateButton("Atras", 215, 620, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VCaribe) EndFunc Func Bonus() $VBonus = GUICreate("Bonus", 500, 300, -1, -1, $WS_SYSMENU) GUICtrlCreateLabel("Numero de Tarjeta:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 52, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi17 = GUICtrlCreateButton("Copiar", 390, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Pin de siete digitos:", 10, 80, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 82, 100, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi18 = GUICtrlCreateButton("Copiar", 390, 81, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Conexion Bonus", 175, 110, 200, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 140, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 142, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi19 = GUICtrlCreateButton("Copiar", 390, 141, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 170, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 170, 172, 200, 30) GUICtrlSetFont(-1, 10, 700, 0, "MS Sans Serif") $copi20 = GUICtrlCreateButton("Copiar", 390, 171, 80, 20) GUICtrlSetCursor (-1, 0) $Atras6 = GUICtrlCreateButton("Atras", 215, 230, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VBonus) EndFunc Func AirTm() $VTM = GUICreate("AirTm", 400, 190, -1, -1, $WS_SYSMENU) GUICtrlCreateLabel("Usuario AirTm", 130, 15, 300, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 50, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi21 = GUICtrlCreateButton("Copiar", 310, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 80, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 80, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi22 = GUICtrlCreateButton("Copiar", 310, 81, 80, 20) GUICtrlSetCursor (-1, 0) $Atras7 = GUICtrlCreateButton("Atras", 150, 120, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VTM) EndFunc Func Correo() $VCei = GUICreate("Correo Electronico", 400, 150, -1, -1, $WS_POPUP) GUICtrlCreateLabel("Correo Electronico", 130, 15, 300, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 50, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi5 = GUICtrlCreateButton("Copiar", 310, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 80, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 80, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi6 = GUICtrlCreateButton("Copiar", 310, 81, 80, 20) GUICtrlSetCursor (-1, 0) $Atras2 = GUICtrlCreateButton("Atras", 130, 110, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VCei) EndFunc Func Faov() $VFav = GUICreate("Faov", 300, 150, -1, -1, $WS_POPUP) GUICtrlCreateLabel("Usuario FAOV", 108, 15, 150, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 50, 100, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi7 = GUICtrlCreateButton("Copiar", 210, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 80, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 80, 100, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi8 = GUICtrlCreateButton("Copiar", 210, 81, 80, 20) GUICtrlSetCursor (-1, 0) $Atras3 = GUICtrlCreateButton("Atras", 109, 110, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VFav) EndFunc Func Seniat() $VSent = GUICreate("Seniat", 300, 150, -1, -1, $WS_POPUP) GUICtrlCreateLabel("Usuario Seniat", 108, 15, 150, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 50, 100, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi9 = GUICtrlCreateButton("Copiar", 210, 51, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 80, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 100, 80, 100, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi10 = GUICtrlCreateButton("Copiar", 210, 81, 80, 20) GUICtrlSetCursor (-1, 0) $Atras4 = GUICtrlCreateButton("Atras", 109, 110, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VSent) EndFunc Func Directv() $VDirectv = GUICreate("Directv", 500, 280, -1, -1, $WS_POPUP) GUICtrlCreateLabel("Usuario Directv", 190, 15, 150, 30) GUICtrlSetFont(-1, 12, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("Usuario:", 10, 50, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 150, 50, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi13 = GUICtrlCreateButton("Copiar", 400, 44, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Contraseña:", 10, 80, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 150, 80, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi14 = GUICtrlCreateButton("Copiar", 400, 74, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Numero de Tarjeta:", 10, 120, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 150, 120, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi15 = GUICtrlCreateButton("Copiar", 400, 115, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Numero de Cedula:", 10, 150, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 150, 150, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi16 = GUICtrlCreateButton("Copiar", 400, 145, 80, 20) GUICtrlSetCursor (-1, 0) GUICtrlCreateLabel("Numero de Cliente:", 10, 180, 150, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") GUICtrlCreateLabel("00000000000", 150, 180, 200, 30) GUICtrlSetFont(-1, 10, 800, 0, "MS Sans Serif") $copi23 = GUICtrlCreateButton("Copiar", 400, 180, 80, 20) GUICtrlSetCursor (-1, 0) $Atras5 = GUICtrlCreateButton("Atras", 200, 230, 90, 30) GUICtrlSetCursor (-1, 0) GUISetState(@SW_SHOW,$VDirectv) EndFunc  
    • By Stormgrade
      Hello.
      I'm french, sorry for my english.
      I release my project, a password manager : Password Keeper
      First I would like to thanks Guinness and Melba23 for their help, and I'm very sorry for those I forget, please remind me to add you.
      Well my program manage and crypt passwords, first I understand if you don't trust me for this kind of sensible software, but I remember you that all the the source files are at your disposal, fell free to explore them.
      The login is : admin and you can change it later
      How it work ? see Methode de cryptage en BDD.pdf in french
      login

       
      The main interface
      You can obviously add,modify and delete your entry, also you can search with keywords

      A password generator is included

      I won't update it anymore.
      It's a BSD license.
      Autoit version : 3.3.14.5
      Have a good day.
      Methode de cryptage en BDD.pdf Passwordkeeper.7z
    • By nacerbaaziz
      hello all, and welcome to this tool
      the NB-Password_generator is a small tool which allow you to create a strong passwords
      with this tool you can create a random passwords using :
      1. capital letters
      2. small letters
      3. numbers
      4. symbols
      be sure that you can check any option that  you want and uncheck what you don't want to use
      this tool allow you to create a password from 6 letters to 150 lettersNB-Password_generator.zip
      at the end please accept my greetings
      am waiting for your commants
    • By rudi
      Hello,
       
      <edit>
      In this posting below you will find a script to get an Active Directory User's Group Memberships including nested Group Memberships:
       
      </edit>
      quite a while ago I started this thread: https://www.autoitscript.com/forum/topic/193984-ad-member-of-group-in-group/
       
      #include <AD.au3> _AD_Open() $user=_AD_SamAccountNameToFQDN("ASP") $group=_AD_SamAccountNameToFQDN("daten-Bestellung-QS_lesen") $result=_AD_IsMemberOf($group,$user,false,True) ; $Group is the 1st, $User the 2nd param ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $result = ' & $result & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console _AD_Close() this works fine, thanks for the help in the other thread.
      Howto to get the "chain" of groups for nested group memberships?

      In AD.AU3 I found the function _AD_RecursiveGetMemberOf(), which might be an approach, (get all the group content then sort out what's needed), just wondering if there is another function that I've overlooked, that directly would give me the "nested membership chain" *ONLY*?
       
      Regards, Rudi.
    • By tweakster2010
      Hello All,
      It has been a long time since I posted, role changes etc involving work and I finally am back to modifying a program I write in AutoIt that has AD integration. I am at a point where we are modifying our structure where I am validating users access via what Distribution List they belong to in our AD OU's. What I have run into is the OU is a sub OU of a sub OU now. Meaning: CN=team, OU=DL, OU=Groups, DC=business.com(working), is now CN=Team, OU=SubDL, OU=DL, OU=Groups, DC=business.com (Not working).  Just curious if the AD functionality should be able to read it or maybe I am missing something?
       
      ElseIf _AD_IsMemberOf("CN=Team,OU=Distribution Lists,OU=Groups,DC=business,DC=com", $sFQDN_User) Then #works for primary Distro ElseIf _AD_IsMemberOf("CN=Team,OU=SubDL,OU=Distribution Lists,OU=Groups,DC=business,DC=com", $sFQDN_User) Then #fails for subOU of DL How I am accessing AD to get the information:
      _AD_Open() Global $aUser = _AD_GetObjectsInOU("", "(&(objectCategory=person)(objectClass=user)(samaccountname=" & @UserName & "))", 2, "ADsPath,Displayname,distinguishedName") Global $sDisplayName0 = $aUser[1][1] ; Displayname ;MsgBox(0,"", $sDisplayName0) If StringLeft($sDisplayName0, 2) = "9-" Then $Displaynamestring = StringTrimLeft($sDisplayName0, 2) $Displaynamestring1 = StringTrimRight($Displaynamestring, 6) The error code generated is a 1 with a 0 extended. I assume it is because it cannot find the SubOU.
       
      Thanks for any assistance.
×
×
  • Create New...