To create a new user ID you must place the data structure kc_user_str in the data area.
A permanent queue is available to every user ID. This queue is addressed using the name of the user ID. The access of other users to this USER queue is controlled by means of the values in the q_read_acl and q_write_acl fields. The maximum number of messages that can be buffered and the response of UTM when this value is reached is determined by the values in the qlev and q_mode fields.
The table below shows you how to supply the fields of the data structure with data.
Field name 1 | Meaning | ||
m | us_name[8]
| Name of the user ID. It can be up to 8 characters long. | |
o | kset[8] | Key set of the user ID. The key set must have been created dynamically beforehand or generated statically. The key set determines the access privileges of the user/client that signs on to the application using this user ID. | |
o | state | Specifies if the user ID is to be disabled or not. No user/client can sign on to the application using a disabled user ID. The user ID must be released (enabled) explicitly by the administrator. | |
'Y': The user ID is not to be disabled (ON). | |||
o | card_position[3]
| Only on BS2000 systems: | |
You must specify the following information in these fields: | |||
card_position | |||
card_position and card_string_lth must define a section of the field of identification information within the area defined by the MAX | |||
card_string_type | |||
'X' | The identification information is passed as a hexadecimal string. | ||
'C' | The identification information is passed as a character string. | ||
card_string | |||
The union kc_string is provided for passing identification information | |||
o | password16
| Password for this user ID. | |
The union kc_pw16 is provided for passing the password. | |||
| |||
In UTM applications on BS2000 systems you can specify the password either as a character string or as a hexadecimal string. For a hexadecimal password (password_type='X'), each half byte is displayed as a character. If you specify a password containing less than 16 characters, then you must pad password16 to the right with spaces (password_type= 'C'), or with the hexadecimal value for a space (password_type='X'). | |||
In UTM applications running on Unix, Linux or Windows systems you must always pass the password as a character string (field password16.c). If you specify a password containing less than 16 characters, then you must pad password16.c to the right with blanks. | |||
You must specify password16 if password_type ='C' or 'X'. | |||
If a user ID is to be created without a password, then you cannot specify anything in password16 and password_type. For protect_pw_compl, you must set it to '0' and for protect_pw16_lth to '00' (default). | |||
o | password_type | In password_type you must specify how the password in password is to be interpreted. | |
'C' | The password in password is interpreted as a character string. | ||
'X' | The password in password is interpreted as a hexadecimal password. Only allowed for user IDs in a UTM application on a BS2000 system. | ||
'N' | No password may be specified i0n password. | ||
'R' | The password generated is a random password. Before the user thus generated can sign on, the administrator must explicitly reset the password. | ||
o | password_dark | Specifies if a password is to be hidden when entered at a terminal. | |
'Y' | After KDCSIGN, UTM requests the user in an interim dialog to enter the password in a darkened field. | ||
'N' | The user conveys the password directly at KDCSIGN. The password is visible on the screen during sign-on (default value). | ||
You can also set password_dark='Y' if you have not specified a password. If the user ID is assigned a password later (with KC_MODIFY_OBJECT, for example), the password entry will be darkened. | |||
Note | |||
o | format_attr
| Only on BS2000 systems: | |
A requirement for assigning a start format is that a formatting system must have been generated (KDCDEF command FORMSYS). If the start format is a #Format, then a sign-on service must also have been generated. | |||
In format_attr you specify the format key of the start format: | |||
'A' | for the format attribute ATTR (+Format). | ||
See "kc_user_str, kc_user_fix_str, kc_user_dyn1_str and kc_user_dyn2_str user IDs" (format_attr, format_name) for the meaning of the format attributes. | |||
In format_name you specify the name of the start format. The name can be up to 7 characters long and may only contain alphanumeric characters. | |||
o | locale_lang_id[2]
| Only on BS2000 systems: | |
In locale_lang_id you specify the language code of the language in which messages and notifications are to be passed. The code is a maximum of 2 bytes long. | |||
In locale_terr_id you specify the territorial code. | |||
In locale_ccsname you specify the CCS name of the expanded character set (coded character set) to be used for outputting data. | |||
o | protect_pw16_lth | Specifies the minimum number of characters a password must contain to be accepted as such by UTM (minimum length of the password). The password for a user ID can only be deleted if protect_pw16_lth ='00'. | |
Maximum value: '16', | |||
o | protect_pw_compl | Specifies the complexity level that the password for the user ID must meet. | |
'0' | (NONE) | ||
'1' | (MIN) | ||
'2' | (MEDIUM) | ||
'3' | (MAX)
| ||
o | protect_pw_time[3]
| Specifies the maximum number of days for which the password remains valid (period of validity). If protect_pw_time = '0' is specified, then the password is valid for an unlimited amount of time. | |
Minimum value: '0', Maximum value: '180' | |||
o | restart | Specifies whether UTM saves service data for the user ID so that a service restart is possible on the next sign-on using this user ID. | |
'Y':UTM saves service data | |||
o | permit | Specifies the administration privileges for the user ID. | |
'A' | (ADMIN) | ||
'N' | (NONE) | ||
'B' | (BOTH) | ||
'S' | (SAT) | ||
o | satsel | Only on BS2000 systems: | |
'B' | Both successful and unsuccessful events are to be logged (BOTH). | ||
'S' | Only successful events are to be logged (SUCC). | ||
'F' | Only unsuccessful events are to be logged (FAIL). | ||
'N' | No user-specific SAT logging is defined (NONE). | ||
Logging can only take place if SAT logging is activated for the application. (See the openUTM manual “Generating Applications” and openUTM manual “Using UTM Applications” for more information on SAT logging.) | |||
o | protect_pw_min_time[3]
| Specifies the minimum term of validity in days for the password. | |
After changing the password, the user must not change it again before the minimum term of validity is expired. | |||
If the password is changed by the administrator or following a regeneration, the user can always change the password, regardless of whether the minimum term of validity is expired or not. | |||
protect_pw_min_time must not be larger than protect_pw_time (maximum term of validity). | |||
Minimum value: '0' | |||
o | qlev[5] | Specifies the maximum number of messages that can be stored temporarily in the user’s message queue. If the threshold value is exceeded, what happens depends on the value in the q_mode field. | |
o | q_read_acl[8] | Specifies the rights (name of a key set) that another user requires in order to be able to read and delete messages from this USER queue. | |
o | q_write_acl[8] | Specifies the rights (name of a key set) that another user requires in order to be able to write messages to this USER queue. | |
o | q_mode | Specifies how UTM responds when the maximum number of not yet executed jobs in the user’s queue is reached. The possible values are: | |
'S' | UTM rejects any further jobs (default). | ||
'W' | UTM accepts further messages but deletes the oldest messages in the queue. | ||
o | principal[100]
| Only on BS2000 systems: |
1 | All fields in the data structure kc_user_str that are not listed and all fields that are not relevant to the operating system you are using are to be set to binary zero. The data structure is described in full in chapter "kc_user_str, kc_user_fix_str, kc_user_dyn1_str and kc_user_dyn2_str user IDs". |