1 #ifndef __MLPIACCESSCONTROLLIB_H__ 2 #define __MLPIACCESSCONTROLLIB_H__ 220 #define MLPI_MAX_USERNAME_LEN (32) 221 #define MLPI_MAX_GROUPNAME_LEN (32) 222 #define MLPI_MAX_INVALIDCHARS_LEN (32) 223 #define MLPI_MAX_USER_DESCRIPTION_LEN (128) 224 #define MLPI_MAX_GROUP_DESCRIPTION_LEN (128) 225 #define MLPI_MAX_PERMISSION_LEN (128) 252 #if !defined(TARGET_OS_VXWORKS) 420 #if !defined(TARGET_OS_VXWORKS) 432 #if defined(TARGET_OS_WINNT) 433 #if defined(MLPI_EXPORTS) 434 #define MLPI_API __declspec(dllexport) 435 #elif defined(MLPI_IMPORTS) 436 #define MLPI_API __declspec(dllimport) 441 #if defined(MLPI_EXPORTS) 442 #define MLPI_API __attribute__ ((visibility("default"))) 443 #elif defined(MLPI_IMPORTS) Unit of expiration time is in minutes.
struct MlpiAccessControlExpirationDetails MlpiAccessControlExpirationDetails
This structure provides information about the expiration settings applied to sessions and passwords...
MLPIRESULT mlpiAccessControlAddPermissionToGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *permission)
This function add a permission to a specified group.
signed char BOOL8
1 byte boolean
MLPIRESULT mlpiAccessControlGetAllUsersOfGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, WCHAR16 *usernames, const ULONG numElements, ULONG *numElementsRet)
This function obtains the user details of all the users assigned to the specified group...
struct MlpiGroupInfo MlpiGroupInfo
This structure provides all basic information about a specific group.
MLPIRESULT mlpiAccessControlGetGroupPolicies(const MLPIHANDLE connection, MlpiGroupPolicies *groupPolicies)
This function returns information regarding the policies that apply to all groups.
struct MlpiGroupDetails MlpiGroupDetails
This structure provides all detailed information about a specific group.
MLPIRESULT mlpiAccessControlSetUser(const MLPIHANDLE connection, MlpiUserDetails userDetails)
This function allows to modify the information of a user. Within the userDetails argument, the correct Id of the user (if known) or username must be given.
struct MlpiPasswordPolicies MlpiPasswordPolicies
This structure contains the policies to be followed to define the user passwords, such as password le...
struct MlpiGroupPolicies MlpiGroupPolicies
This structure contains the policies to be followed by a group.
MLPIRESULT mlpiAccessControlGetGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, MlpiGroupDetails *groupDetails)
This function obtains the details of a specific group.
MLPIRESULT mlpiAccessControlSetGroup(const MLPIHANDLE connection, MlpiGroupDetails groupDetails)
This function allows to modify the information of a group. Within the groupDetails argument...
MLPIRESULT mlpiAccessControlSetGroupsOfUser(const MLPIHANDLE connection, const WCHAR16 *username, const WCHAR16 *groupNames)
This function sets the Groups of a User. It is capable of adding multiple new groups to a user or del...
#define MLPI_STRUCT_ALIGN_STRUCT
structure, dummy
wchar_t WCHAR16
UTF16 string.
MLPIRESULT mlpiAccessControlAddUser(const MLPIHANDLE connection, MlpiUserDetails userDetails, const WCHAR16 *tmpPassword)
This function adds a new user in the target that can be used for authentication. Once the user is add...
unsigned int ULONG
4 byte unsigned integer
MLPIRESULT mlpiAccessControlAddGroup(const MLPIHANDLE connection, MlpiGroupDetails groupDetails)
This function adds a new group in the target that can be used for authorization.
MLPIRESULT mlpiAccessControlGetAllGroupInfos(const MLPIHANDLE connection, MlpiGroupInfo *groupInfos, const ULONG numElements, ULONG *numElementsRet)
This function provides information regarding all the groups of users currently supported by the user ...
MLPIRESULT mlpiAccessControlGetUser(const MLPIHANDLE connection, const WCHAR16 *username, MlpiUserDetails *userDetails)
This function obtains the user details of a specific user.
#define MLPI_STRUCT_ALIGN_BOOL8
1 byte boolean, aligned within structs to MLPI data type BOOL8
MLPIRESULT mlpiAccessControlDeleteGroup(const MLPIHANDLE connection, const WCHAR16 *groupName)
This function deletes the group specified by the given group name.
#define MLPI_STRUCT_ALIGN_ENUM
enumeration, aligned within structs to 32 bit
Unit of expiration time is in days.
#define MLPI_STRUCT_ALIGN_ULONG
4 byte unsigned integer, aligned within structs to MLPI data type ULONG
MLPIRESULT mlpiAccessControlGetAllPermissionsOfGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, WCHAR16 *permissions, const ULONG numElements, ULONG *numElementsRet)
This function obtains the permissions of the specified group.
MLPIRESULT mlpiAccessControlRemoveUserFromGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *username)
This function removes a user from specified group. In other words, the user will not be identified as...
MLPIRESULT mlpiAccessControlDeleteUser(const MLPIHANDLE connection, const WCHAR16 *username)
This function deletes a user specified by a given username.
struct MlpiDateAndTime MlpiDateAndTime
This structure defines the broken date and time information.
MLPIRESULT mlpiAccessControlRemovePermissionFromGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *permission)
This function removes a permission from the specified group.
MLPIRESULT mlpiAccessControlGetPasswordPolicies(const MLPIHANDLE connection, MlpiPasswordPolicies *passwordPolicies)
This function returns information regarding the policies that apply to all the user passwords...
MLPIRESULT mlpiAccessControlGetUserPolicies(const MLPIHANDLE connection, MlpiUserPolicies *userPolicies)
The user is available permanently until specified otherwise.
MLPIRESULT mlpiAccessControlGetAllGroupsOfUser(const MLPIHANDLE connection, const WCHAR16 *username, WCHAR16 *groupNames, const ULONG numElements, ULONG *numElementsRet)
This function provides the general group information of all the groups assigned to the specified user...
MlpiUserPersistenceType
This enumeration describes the possible persistence type of a user, whether it a temp or remanent use...
MLPIRESULT mlpiAccessControlSetPermissionsOfGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *permissions)
This function sets the permissions of the group specified by the given group name.
MLPIRESULT mlpiAccessControlGetAllPermissions(const MLPIHANDLE connection, WCHAR16 *permissions, const ULONG numElements, ULONG *numElementsRet)
This function obtains all permissions that are available (and therefore may be added to a group) on t...
struct MlpiUserInfo MlpiUserInfo
This structure provides all basic information about a specific user.
struct MlpiUserPolicies MlpiUserPolicies
This structure contains the policies to be followed by a user.
MLPIRESULT mlpiAccessControlSetAuthorizedGroupsOfPermission(const MLPIHANDLE connection, const WCHAR16 *permission, const WCHAR16 *groupNames)
This function assigns the specified permission(s) to the specified groups. The purpose of the functio...
struct MlpiUserDetails MlpiUserDetails
This structure provides all detailed information about a specific user.
MLPIRESULT mlpiAccessControlGetAllUserInfos(const MLPIHANDLE connection, MlpiUserInfo *userInfos, const ULONG numElements, ULONG *numElementsRet)
This function returns information regarding all the users currently found within the user manager loc...
MLPIRESULT mlpiAccessControlResetPassword(const MLPIHANDLE connection, const WCHAR16 *username, const WCHAR16 *newPassword)
This function sets a new password for a specific user (password reset). It is recommended that only u...
MLPIRESULT mlpiAccessControlSetUsersOfGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *usernames)
This function sets the Users of a Group. It is capable of adding multiple new users or deleting pre-e...
unsigned long MLPIHANDLE
common MLPI-API handle value
MLPIRESULT mlpiAccessControlChangePassword(const MLPIHANDLE connection, const WCHAR16 *username, const WCHAR16 *oldPassword, const WCHAR16 *newPassword)
This function changes a user's password.
The user is only available temporarily.
MLPIRESULT mlpiAccessControlAddUserToGroup(const MLPIHANDLE connection, const WCHAR16 *groupName, const WCHAR16 *username)
This function add a user to a specified group. In other words, the user will be identified as a membe...
int MLPIRESULT
common MLPI-API return value
MLPIRESULT mlpiAccessControlGetAllAuthorizedGroupsOfPermission(const MLPIHANDLE connection, const WCHAR16 *permission, WCHAR16 *groupNames, const ULONG numElements, ULONG *numElementsRet)
This function obtains the groups to which a specific permission is assigned.
#define MLPI_STRUCT_ALIGN_WCHAR16
2 byte char, aligned within structs to MLPI data type WCHAR16
MlpiAccessControlExpirationTimeUnit
This enumeration describes the possible units that the expiration time can have (i.e. days or minutes).