Usage: make_user -u=<user> {-p=<password>|-pf=<password file>} -g=<group name> <args>

 -u=<user> specify admin user name;
 -p=<password> specify admin user password;
 -g=<group name> specify admin user's group;
 -pf=<password file> Specifies the file holding the clean text password.
                     If this argument is not used, the system assumes the password value to be the password.
                     This argument is mutually exclusive with the -p argument.
 the args include the following;
 -password=<pswd>  ensure the user has the given password.
 -volume=<name>    the volume name. A volume with the given name would be
                   created if it does not exist in the data base yet.
 -person=<name>    the person name. A person with the given name would be
                   created if it does not exist in the data base yet.
 -role=<name>      the role name. A role with the given name would be
                   created if it does not exist in the data base yet.
 -group=<name>     the group name. A group with the given name would be
                   created if it does not exist in the data base yet.
 -user=<user id>   the user id. A user with the given user id would be
                   created if it does not exist in the data base yet.
 -OSuser=<name>    the os name of the user.
 -node=<nodename>  the node where the volume is created.
 -path=<pathname>  the path where the volume is created.

    NOTE:  The following four arguments are related to the FMS
           master configuration.
           One and only one of the arguments -fscid, -filestoregroupid,
           and -loadbalancerid must be supplied.

    -fscid=<fsc id>
                      the FSC ID in the FMS config to which the
                      volume element will be added.
    -filestoregroupid=<filestore group id>
                      the Filestore Group ID in the FMS config to which the
                      volume element will be added.
    -loadbalancerid=<load balancer id>
                      the Load Balancer ID in the FMS config to which the
                      volume element will be added.

 -os               use the password and group files to create users (UNIX ONLY)
 -file=<filename>  read file to create users or modify existing users, groups and roles 
                   after other arguments are processed.
                   each record in the file contains:
                   person|user|password|group|role[|option1_name|option1_value|option2_name|option2_value|....|update] 
                   When creating users from the file, 
                   password and role can be null (i.e. ||)
                   role defaults to the last value specified in either
                   the file or on the command line(-role=)
                   To add custom profile properties, add cup. before the property name 
                   that is, option_name = cup.<custom property name>, option_value = <custom property value> 
                   When modifying an existing user, group or role,
                   specify the options that need to be modified by 
                   (option_name|option_value) pairs followed by update option at the end. 
                   When creating users from file on UNIX, passwords would be auto-generated 
                   if they are specified as $GEN$ or $gen$. 
 -update                    Option to modify existing user, group or role. 
 -rename=<newname>          Option to rename existing user, group or role and person.
 -remove_groupmember        Specifies the removal of the existing user from the specified group and role.
 -ttc_date=<TTC Date>       Specifies the Technology Transfer Certificaton (TTC) date, which is the date when the user's
                            qualification for viewing data marked as government classified lapses.
                            The date type format is: dd-Mon-yyyy. For example, 03-Jan-2018.
 -user_homesite=<Site Name> Specifies the Home Site for the specified user.
 -user_denyloginatsites=<List of sites user denied login at> Specifies the sites where user is denied the login.
                            While specifying more than one site comma separator ',' should be used. For example: site1,site2,site3.
 -status=<status>           ensures the user has the given status. 
                            0(Active) or 1(Inactive).
 -licenselevel=<licenselevel>   ensures the user has the given license level. 
                                'author', 'occasionalauthor' or 'consumer'.
 -licensebundle=<licensebundle> sets the user to use the given license bundle.
 -licenseserver=<licenseserver> sets the user to use the given license server.
 -vislicenselevel=<vislicenselevel>   ensures the user has the given VIS license level. 
                                Valid values are 'base', 'standard', 'professional' or 'mockup'.
 -description=<description> sets the description for group and/or role.
 -security=<security>       sets a group's security. 
                            Defaults to NULL when the option is not specified. 
 -operational_status=<operational_status>   sets a group's operational status. 
                     0(Active) 1(Temporarily Inactive) 2(Permanently Inactive).
 -organization_name=<organization_name>      sets a group's organization name. 
 -organization_alternate_name=<organization_alternate_name>  sets a group's  
                                              organization alternate name.
 -organization_legal_name=<organization_legal_name>       sets a group's 
                                               organization legal name.
 -organization_address=<organization_address>       sets a group's 
                                               organization address.
 -organization_url=<organization_url>       sets a group's organization URL. 
 -organization_id=<organization_id>      sets a group's organization ID. 
 -organization_type=<organization_type>     sets a group's organization type. 
 -group_nationality=<group_nationality> sets user group nationality. 
 -privilege=<privilege>     sets a group's privilege. 
                            A group's privilege can be either 0 (Non DBA) or 1 (DBA). 
 -parent=<parent>           sets the group's parent group. The parent should be an existing one.
 -defaultgroup=<defaultgroup>   sets the given group as the User's default group. 
                                The defaultgroup should be an existing one. 
                                Also the user should be a member of the defaultgroup. 
 -defaultvolume=<defaultvolume> sets the given volume as the User's and/or Group's default volume. 
                                The defaultvolume should be an existing one. 
 -defaultlocalvolume=<defaultlocalvolume> sets the given volume as the User's and/or Group's default local volume. 
                                          The defaultlocalvolume should be an existing one, and different from the
                                          users default volume. 
 -defaultrole=<defaultrole>     sets the given role as the Group's default role. 
                                The defaultrole should be an existing one. 
 -discipline=<disciplinename>   creates a discipline with the given name. 
 -disciplinedescription=<disciplinedescription>   sets the description for discipline. 
 -disciplinerate=<disciplinerate> sets the rate for discipline. 
 -disciplinecurrency=<disciplinecurrency> sets the currency for discipline. 
 -nationality=<nationality> sets user nationality. 
 -geography=<geography> sets user's geography. 
 -userDeclaredGeography=<geography> sets user's user declared geography. 
                               Valid values are two-character country codes from ISO 3166.
 -allUserGeography=<geography> sets geography for ALL users. This works for 
                               command line only - not supported in input file.
                               This option is processed before other options
 -allUserDeclaredGeography=<geography> sets user declared geography for ALL users. This works for 
                               command line only - not supported in input file.
                               This option is processed before other options
                               Valid values are two-character country codes from ISO 3166.
 -ip_clearance=<ip clearance> sets user's ip clearance. 
 -gov_clearance=<government clearnce> set user's government clearance. 
 -citizenships=<citizenships of user> set user's citizenships
 -PA1=<PA1> set person's PA1 attribute(address OOTB).
 -PA2=<PA2> set person's PA2 attribute(city OOTB).
 -PA3=<PA3> set person's PA3 attribute(state OOTB).
 -PA4=<PA4> set person's PA4 attribute(zip code OOTB).
 -PA5=<PA5> set person's PA5 attribute(country OOTB).
 -PA6=<PA6> set person's PA6 attribute(organization OOTB).
 -PA7=<PA7> set person's PA7 attribute(GID OOTB).
 -PA8=<PA8> set person's PA8 attribute(mailcode OOTB).
 -PA9=<PA9> set person's PA9 attribute(email address OOTB).
 -PA10=<PA10> set person's PA10 attribute(phone number OOTB).
 -cup.<custom property name>=<custom property value> set User's custom profile attributes.
 For example, -cup.custom_property_name=custom_property_value.
 -ga=<group member admin privilege> sets group member's admin privilege. 
                                    true/t/yes/y/1 (admin) or false/f/no/n/0(non admin). 
 -gm_status=<group member status> sets group member status. 
                                  true/t/yes/y/1 (inactive) or false/f/no/n/0(active). 
 -user_defaultrole=<user default role for group flag> Specifies default role for all users.
                                 true/t/yes/y/1 (assigning default role flag) or false/f/no/n/0(removing default role flag).
 -V                             turn on verbose mode
 -ignoreIfNotExist          use on upgrade to ignore objects that don´┐¢t exist. 
 -sponsorable=<Sponsorable>       sets sponsorable attribute on User.
                                  true/t/yes/y/1 (sponsorable) or false/f/no/n/0(not sponsorable). 

 User creation requires the -person, -group and -user arguments.

 If user and group are specifed the user will be made a
 member of that group. If a role is given as well as a user 
 and group, then the member created will be given that role.

 If the -os switch is specified, then all groups in the group file
 will be created, and all of the users in the password file will
 be created and made members of every group to which they belong
 in the operating system.  If the -group switch is included with
 the -os switch, then only that group will be created, and all
 people who are members of that group will be created and added
 to that group.  If the -role switch is also included, then all
 users that are created will be assigned that role.

 Volume creation requires -volume, -node and -path arguments.

 If the -volume switch is specified, then all of the groups that 
 are created will be granted access to the volume.  If the specified
 group already exists and does not have a default volume,   
 then the volume will be designed as the group's default volume.

 To use a cloud volume, -volume input must in the format of <cloudserviceid>:<volume>
 where cloudserviceid is the ID of a Cloud Service in the FMS config. -node and -path arguments are not required when using cloud volume.
 When specifying -defaultrole, -defaultgroup, -defaultvolume, -defaultlocalvolume and -parent 
 defaultrole, defaultgroup, defaultvolume, defaultlocalvolume and parent objects should be existing objects. 

 Only one object - user, group or role - can be updated at a time. 
 With update option, if user, group and role options are specified, 
 user object is assumed as the target object for updation. 
 If group, role [with no user option] options are specified 
 then group object will be updated. 
 If role option is specified [with no user and group options] then role will be updated.
 The object that needs to be updated should already exist.

 Group privilege can be either 0 or 1.
 A privilege value of 1 implies that the Group has DBA privileges. 
 A 0 implies a non-DBA group. Defaults to 0 when the option is not specified.

 Valid values for status option are 0 - Active and 1 - Inactive. 
 Defaults to Active when the option is not specified. 
 Valid values for licenselevel option are 'author', 'occasionalauthor', and 'consumer'. 
 Defaults to consumer when the option is not specified. 

 Custom profile properties of date type require the format: yyyy-MM-ddThh:mm:ss zz:zz 
 that is, -cup.custom_property_name=yyyy-MM-ddThh:mm:ss zz:zz
 year    yyyy
 month   MM: 1-12 (January = 1)
 day     dd: 1-31
 hour    hh: 0-23
 minutes mm: 0-59
 seconds ss: 0-59
 For example: 
 -cup.custom_property_name=2014-11-12T14:32:05-08:00     The -08:00 is minus 8 hours from GMT (Pacific Standard Time).

