Andre.A
4th July 2003, 15:12
hi folks,

I could not find a solution for a particular problem:

I want to do a password aging function by my own. This should be implemented in a 3gl script. If the password is older than x days the user have to change his passwort over the unix command "passwd". If the user did not change his password the system is locked for this user or the baan interface ends itself.
the main problem is to prevent the user to start anything from the menu browser.
Is there any way to unload / prevent / lock the menu browser from user inputs ??
I could not find a solution where the 3gl shell call is a "modal" window .

any hints at this problem ?

thx in advance

estotz
4th July 2003, 16:41
Since you are using Unix, I would trap this by writing your own unix script to check the password first and then start Baan or force the password change. You would write the script and modify your ipc_info file to use the script associated with the bshell.

There are other ways to get to where you want to go, this may be the cleanest solution.

rupertb
4th July 2003, 16:45
Hi Andre,
Here's our solution (for B40_b2 on AIX):


ipc_info changes are as in the attached file, bshell now calls bshell6.12
bshell6.12 is an executable file that calls either 'tccompasswd03' or 'bshell6.1' depending on output of script 'get_user_expiry' (downloaded from the net somewhere)
suggest changing your ipc_info to look like ours but it'll mean that you have to change all your clients to point towards bshell environment 'bshell2' (can be time consuming) but at least that way you can revert back in case of problems...


If any of this doesn't make any sense then let me know... there's a bit more detail that I can go into. With regards to the "get_user_expiry" I think that was a utility that we got off of the net somewhere.

Regards,
Rupert

isimeon
4th July 2003, 17:13
Originally posted by Andre.A
Is there any way to unload / prevent / lock the menu browser from user inputs ??





function kill.browser()
{
long info(256)
long next.processno
long save.processno
long mbrowser,browser
string progname(256)

mbrowser=0
browser=0
repeat
save.processno=0
repeat
next.processno = pstat(save.processno, progname, info)
if strip$(progname(1;13))="ottdskmbrowse" then
mbrowser=save.processno
endif
if strip$(progname(1;13))="ottdskbrowser" then
browser=save.processno
endif
save.processno = next.processno
until next.processno=0
until mbrowser<>0 and browser<>0
kill(mbrowser)
kill(browser)
}

NPRao
4th July 2003, 19:49
isimeon,

Your solution works for BaaN-4 series and not BaaN-5 series with Worktop interface. The tt-dsk (desktop) functionality is phased out in BaaN-5.2 series. I am not sure if it is still available in BaaN-5.a, b, c.

Andre.A
9th July 2003, 11:18
Great !

I tried the solution with the kill.browser() function and I think this is the best solution because I don“t have to change anything on unix or on client side.

thx 2 all :D :D :D