Click here to jump to Nash!Com Solutions Homepage - Click here to request a test version.


Group & Access Reporting Tool


Nash!Com Solutions

Version: 1.0c
Shortname: nshgroup
Category: Command-Line Tool


Short Description

This program enables you to display group membership and access to databases on specified server.
A report can be copied to file or send via Mail. This tool uses the same internal technology like Notes authentication and may be used for security auditing for users and for building a complete list of access for specific users.

Key Features

- show all groups a User belongs to
- show access to databases for specific User

Screen Print



01.02.2001 12:00:00   NshGroups - Notes Show Groups & Access Tool
01.02.2001 12:00:00   (c)1999-2001 NashCom - Daniel Nashed Communication Systems

01.02.2001 12:00:00     -u  : username
01.02.2001 12:00:00     -x  : do not show no access
01.02.2001 12:00:00     -y  : do not show access
01.02.2001 12:00:00     -s  : servername
01.02.2001 12:00:00     -r  : process directories recursively
01.02.2001 12:00:00     -o  : output file
01.02.2001 12:00:00     -m  : mail report to <username>


Description:

Nash!Com Group Access Reporting enables you to show the comple group membership for persons and can help to determine the access rights to databases on all databases on the selected server. This program does only work on servers, because the security context that is used is build from the local names.nsf of the server. It shows a complete list of group membership including membership in nested groups. A uses can see the same list clicking on the access symbol in the right corner of your screen next to the location selection box. In addition you can create a list of databases a specify user has access to or all databases a user has no access to.

Example:

load nshgroup -u"John Doe" -m"LocalDomainAdmins" *.nsf

Group List for 'John Doe' based on Public Address Book
______________________________________________________________________

CN=John Doe/O=Acme/C=DE
John Doe
*
*/O=Acme/C=DE
*/C=DE
CN=AdminGroup/O=Acme/C=DE
LocalDomainPeople
LocalDomainAdmins
CN=PassthruGroup/O=Acme/C=DE

Access List of Databases on nsh-acme-01/Acme/DE
______________________________________________________________________

admin4.nsf (Manager)
decsdoc.nsf (Author)
disk.nsf (NoAccess)
domcfg.nsf (Manager)
help4.nsf (Reader)
smtptbls.nsf (Author)
statrep.nsf (Manager)
...


-- Action to perform --

The following actions are currently supported

( -u ) Create a group list for specified user

Show a group list for a person based on the Domino Directory of the current server.
Specify the username with the -u option and make sure to enclose user names that contain blanks with quotes.

There are two special usernames that can be used to determine the default access for authenticated users ("-Default-" ) and for anonymous users ("Anonymous").

Example: load nshgroup -u"John Doe" -m"LocalDomainAdmins"
sends a mail to LocalDomainAdmins containing the usernames list for "John Doe".
The user name is located in the directory before group expansion is done.

Create a database access list for specifiy user ( e.g. *.nsf )

this option creates a comple access list for all selected database the specified user has on that server.
You may want to use "-Default-" to show default access for authenticated users or "Anonymous" to show access for not authenticated users.

Example: load nshgroup -u"John Doe" -m"LocalDomainAdmins" *.nsf
sends a mail to LocalDomainAdmins containing the usernames list for "John Doe"
and creates a comple access report for all matching databases.

Example: load nshgroup -u"-Default-" -m"LocalDomainAdmins" *.nsf
sends a mail to LocalDomainAdmins containing the usernames list for "-Default-" (is almost empty)
and creates a comple access report for all matching databases showing default access to databases.

( -x ) Show only databases where the selected user has Access

this option does prevent databases with NoAccess for the current user to be listed.

Example: load nshgroup -u"Anonyous" -m"LocalDomainAdmins" *.nsf -x
sends a mail to LocalDomainAdmins containing the usernames list for unauthenticated users.
and creates a comple access report for all matching databases.
Only databases that are accessible by the specified users are listed.

( -y ) Show only databases where the selected user has NoAccess

this option does only list databases where the specified user has NoAccess.

Example: load nshgroup -u"Anonyous" -m"LocalDomainAdmins" *.nsf -x
sends a mail to LocalDomainAdmins containing the usernames list for unauthenticated users.
and creates a comple access report for all matching databases.
Only databases that are NOT accessible by the specified users are listed.

What happens if no flags are used?

If you do not use one of the action flags, the databases are only listed.
You could use this feature to check if your selection is OK or to create a file that you can modify and use via -f option

-- Ways to select databases --

1. specify a database name in the command line
2. specify a list of databases listed in a file via option -f
3. use wildcards (* and ?) for specifying databases and templates including subdirectories if using the ( -r ) option
4. specify a remote server name ( -s ) where to search for databases

you can combine any listed ways

Some examples:

1. specify a database name in the command line

Example:

load nshgroup mydb.nsf

runs on mydb.nsf

2. specify a list of databases in a file via option -f

Example:

load nshgroup whatever.nsf -fdb.txt

runs on whatever.nsf and all databases listed in db.txt
db.txt should contain databases including full path like

names.nsf
mail/jdoe.nsf
info/acme.nsf

3. use wildcards for specifying databases and templates including subdirectories if using the ( -r ) option

Example:

load nshgroup mail/*test*.nsf

runs on all databases that meet the selection within the mail subdirectory
e.g. mail/dus-test.nsf but not mail/dus/old/test.nsf

If you want to include subdiretories use the -r switch.
As soon you have multiple wildcards in different directories you need to use the recurse subdirectory switch

Example:

load nshgroup mail/test?/*.nsf -r

this does match e.g. mail/test1/jdoe.nsf

but also matches mail/test2/hilden/jdoe.nsf because this does also match the pattern.

4. specify a remote server name ( -s ) where to search for databases

-s Option defines the server where databases are searched

Example:

load nshgroup -snotes-acme-01 mail/*.nsf

runs on databases (.nsf files) in directory mail on notes-acme-01

load nshgroup mail/test??xxx*.nsf

runs on databases (.nsf files) that match the pattern "/mail/test??xxx*.nsf"


-- Output options --

In case you want to redirect output you have the following options

( -o ) Redirect output to file

Writes output to a the file specified.

Example: load nshgroup -u"John Doe" -ooutfile.txt
writes output to outfile.txt

Comment: this option might help to create a list of databases that can be modified and uses as input for "-f" option.

( -m ) Send output via mail

Sends output to the specified user.

Example: load nshgroup -u"John Doe" -m"John Doe"
sends output to John Doe



Show details for Installation InstructionsInstallation Instructions
Hide details for Installation InstructionsInstallation Instructions
  1. copy into Notes exe directory
  2. run from command line or server console
    and make sure notes.ini can be found in the directory or is in the path