Quantcast
Viewing all articles
Browse latest Browse all 142

When an employee leaves the company deleting log-in credentials is not enough

The other day while working an issue at a customer site I noticed and happened to mention that there were two sets of application processes running, one set running under some generic name like Production.SysAdmin and one set, which had been running for over 3 years, under a person’s name, call him Fred.SysAdmin. It turns out that Fred had left the company a while back. I am not saying that Fred had any malicious intent but it occurred to me that a “best practices” that is always mentioned is to terminate Fred’s log-in credentials immediately when he leaves the company, perhaps right before you tell him he is leaving the company. But I never heard any best practice about terminating any processes that Fred had started. Given the length of time between reboots of VOS systems I am sure that this scenario is not unique. I suggest that, besides terminating their log-in credentials when someone leaves the company, any process running under that person’s name or executing a program module created by that person be evaluated then scheduled for termination and if deemed necessary restarted by a current employee. Likewise the batch queue should be reviewed and any requests in the person’s name should be evaluated, canceled and, if deemed necessary, resubmitted by an existing employee.
To check the batch queue you can use the command
list_batch_requests -all -long
and look for Fred’s name as the “user”

list_batch_requests -all -long

Request: 59
User: Fred.SysAdmin
Time queued: 10-08-11 05:00:02 edt
Deferred until: 10-08-12 05:00:00 edt
Attributes: waiting, not privileged, cannot restart
Process priority: 5
Queue priority: 4
Process name: test
Command: test.cm
Output path: %system#m16_mas>SysAdmin>Fred>test.out
Home dir: %system#m16_mas>SysAdmin>Fred
Notify users: Fred.* on %system#*
You can use the command
analyze_system -request_line (string match fred (byte 3Bx) who) -quit
to identify processes running under Fred’s name.

analyze_system -request_line (string match fred (byte 3Bx) who) -quit
OpenVOS Release 17.0.2ah, analyze_system Release 17.0.2ah
Current process is 182, ptep 958C5000, Noah_Davids.CAC
* 162 958C5000 551080B6 Fred.SysAdmin (testing)

T he following command macro can be used to find any executing program modules created by Fred regardless of what name the process is running under. The macro creates a list of all executing program modules then does a display_file_status to determine who created the program module file and a display_program_module to determine who bound the program module. Any program module created or bound by someone with a name matching the input string is displayed along with the processes executing that program module. It also creates a report in the current directory named wr_&NAME&.(date).out, where &NAME& is the argument given to the macro.  All names are translated to lower case. If no name is given it displays information on every executing program module and the report is named wr.(date).out.


whos_running fred
OpenVOS Release 17.0.2ah, analyze_system Release 17.0.2ah
Current process is 1055, ptep 959E0000, Noah_Davids.CAC
as:  as:
============================================================
%phx_vos#m15_mas>SysAdmin>George>loop.pm
Bound by: Fred.SysAdmin
Created: George.SysAdmin
loop.pm:
Object is read locked by George.SysAdmin (loop) on module
%phx_vos#m16 executing loop.pm.============================================================%phx_vos#m15_mas>Production>test>ftpd.pm
Bound by: Stcp_Install.Installer
Created: Fred.SysAdmin
ftpd.pm:
Object is read locked by Production.SysAdmin (testing) on module
%phx_vos#m16 executing ftpd.pm.
ready  09:05:22

& whos_running begins_here
&
& whos_running.cm
& version 1.0 10-08-18
& noah.davids@stratus.com
&
&begin_parameters
NAME name:string
&end_parameters
&
&echo no_input_lines no_command_lines no_macro_lines
&if (process_type) ^= interactive
&then &do
set_ready -format off
use_abbreviations -off
&end
&
&attach_input
analyze_system
&
&set_string EIT (process_dir)>eit
&set_string DFS (process_dir)>dfs
&set_string T1 (process_dir)>temp1
&set_string RESULTS (process_dir)>results
&
..attach_default_output &EIT&
match #; dump_eit -summary
..detach_default_output
&
quit
attach_default_output &DFS&
&set LINE 1
&label AGAIN
&if &LINE& = 1 &then &set_string PATH (substr (contents &EIT& &LINE& -hold) 14)
&else &set_string PATH (substr (contents &EIT& &LINE& -hold) 9)
&if (length &PATH&) < 6 &then &goto NEXT1
display_file_status &PATH&
display_program_module &PATH&
&set LINE (calc &LINE& + 1)
&goto AGAIN
&
&label NEXT1
detach_default_output
attach_default_output &T1&
display &DFS& -match 'name:                      %' -line_numbers -no_header
display &DFS& -match author: -line_numbers -no_header
display &DFS& -match user_name: -line_numbers -no_header
detach_default_output
&
sort &T1& -length_1 5 -collation_1 descending_numerical
&
&if (length &NAME&) > 0 &then &set_string NAME (translate &NAME&)
&else &set_string NAME .
&
attach_default_output &RESULTS&
&set LINE 1
&label AGAIN2
&set FLAG 0
&set_string BOUNDBY (substr (contents &T1& &LINE& -hold) 32)
&if (end_of_file &T1&) < 1 &then &do
&set_string CREATED (substr (contents &T1& (calc &LINE& + 1) -hold) 34)
&set_string PATH (substr (contents &T1& (calc &LINE& + 2) -hold) 34)
&if (index (translate &BOUNDBY&) &NAME&) > 0 &then &set FLAG 1
&if (index (translate &CREATED&) &NAME&) > 0 &then &set FLAG 1
&if &FLAG& = 1 &then &do
display_line
display_line ============================================================
display_line
display_line &PATH&
display_line Bound by: &BOUNDBY&
display_line Created: &CREATED&
who_locked &PATH&
&end
&set LINE (calc &LINE& + 3)
&goto AGAIN2
&end
detach_default_output
&
&if &NAME& ^= '.' &then &set_string NAME wr_&NAME&.(date).out
&else &set_string NAME wr.(date).out
copy_file &RESULTS& &NAME& -delete
display &NAME& -no_header
&
& whos_running ends here

The post When an employee leaves the company deleting log-in credentials is not enough appeared first on Stratus | Zero-touch Edge Computing.


Viewing all articles
Browse latest Browse all 142

Trending Articles