sec_rgy_acct_replace_all(3sec)
Replaces all account data for an account
Synopsis
#include <dce/acct.h> void sec_rgy_acct_replace_all( sec_rgy_handle_t context,
sec_rgy_login_name_t *login_name, sec_rgy_acct_key_t *key_parts, sec_rgy_acct_user_t
*user_part, sec_rgy_acct_admin_t *admin_part, boolean32 set_password,
sec_passwd_rec_t *caller_key, sec_passwd_rec_t *new_key, sec_passwd_type_t
new_keytype, sec_passwd_version_t *new_key_version, error_status_t *status);
Parameters
Input
context An opaque handle bound to a registry server. Use sec_rgy_site_open( ) to acquire a bound handle.
login_name A pointer to the account login name. A login name is composed of three character strings, containing the principal, group, and organization (PGO) names corresponding
to the account. For the group and organization names, blank strings can serve as wildcards, matching any entry. The principal name must be input.
user_part A pointer to the sec_rgy_acct_user_t structure containing the user part of the account data. This represents information can be modified only by the account
owner or other authorized user.
admin_part A pointer to the sec_rgy_acct_admin_t structure containing the administrative part of an account's data. This information includes the account creation and
expiration dates and flags describing limits to the use of privilege attribute certificates, among other information, and can be modified only by an administrator.
set_passwd The password reset flag. If you set this parameter to TRUE, the account's password will be changed to the value specified in new_key.
caller_key A key to use to encrypt the key for transmission to the registry server. If communications secure to the rpc_c_authn_level_pkt_privacy level are available
on a system, then this parameter is not necessary, and the packet encryption is sufficient to ensure security.
new_key The password for the new account. During transmission to the registry server, it is encrypted with caller_key.
new_keytype The type of the new key. The server uses this parameter to decide how to encode the plaintext key.
Input/Output
key_parts A pointer to the minimum abbreviation allowed when logging in to the account. Abbreviations are not currently implemented and the only legal value is
sec_rgy_acct_key_person.
Output
new_key_version The key version number returned by the server. If the client requests a particular key version number (via the version_number field of the
new_key input parameter), the server returns the requested version number back to the client.
status A pointer to the completion status. On successful completion, the routine returns error_status_ok. Otherwise, it returns an error.
Description The sec_rgy_acct_replace_all( ) routine replaces both the user and administrative information in the account record specified by the input login name. The
administrative information contains limitations on the account's use and privileges. The user information contains information such as the account home directory and default shell. The
administrative information can only be modified by a registry administrator or another authorized user (users with admin_info (a) and mgnt_info (m) privileges for
an account). The user information can be modified by the account owner or another authorized user (users with user_info (u) privileges for an account).
Use the set_passwd parameter to reset the account password. If you set this parameter to TRUE, the account's password is changed to the value specified in new_key.
The key_parts variable identifies how many of the login_name parts to use as the unique abbreviation for the replaced account. If the requested abbreviation duplicates an existing
abbreviation for another account, the routine identifies the next shortest unique abbreviation and returns this abbreviation using key_parts.
Permissions Required The sec_rgy_acct_replace_all( ) routine requires the following permissions on the account principal:
· The m (mgmt_info) permission, if flags or expiration_date is to be changed.
· The a (auth_info) permission, if authentication_flags or good_since_date is to be changed.
· The u (user_info) permission, if user flags, gecos, homedir (home directory), shell, or passwd
(password) are to be changed.
Notes All users need the w (write) privilege to modify any account information.
Files
/usr/include/dce/acct.idl The idl file from which dce/acct.h was derived.
Errors
The following describes a partial list of errors that might be returned. Refer to the OSF DCE Problem Determination Guide for complete descriptions of all error messages.
sec_rgy_not_authorized The client program is not authorized to change account information.
sec_rgy_object_not_found The specified account could not be found.
sec_rgy_server_unavailable The DCE Registry Server is unavailable.
error_status_ok The call was successful.
Related Information Functions:
sec_intro(3sec)
sec_rgy_acct_add(3sec)
sec_rgy_acct_admin_replace(3sec)
sec_rgy_acct_rename(3sec)
sec_rgy_acct_user_replace(3sec)
|