summaryrefslogtreecommitdiffstats
path: root/xyz/openbmc_project/User/README.md
blob: 1ce17e0261ef116cf58cf3642ced8b3d0d52347c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
# User Management

## Overview
User Manager service exposes D-Bus methods for user management operations.

### User Manager Interface
User manager interface `xyz.openbmc_project.User.Manager` provides following
methods, properties and signals.

#### xyz.openbmc_project.User.Manager interface
##### methods
* CreateUser - To create new user to the system.
* RenameUser - To rename existing user to new name in the system.

##### properties
* AllGroups - To list all the groups supported in the system.
* AllPrivileges  - To list all the privileges supported in the system.

##### signals
* UserRenamed - Signal sent out when user is renamed in the system.

#### xyz.openbmc_project.User.AccountPolicy interface
##### properties
* MaxLoginAttemptBeforeLockout - Permissible attempt before locking out the
user for failed login attempts.
* AccountUnlockTimeout - Timeout (in seconds) to unlock the account after a
lockout.
* MinPasswordLength - Minimum password length, which can be set.
* RememberOldPasswordTimes – Number of times old password shouldn’t be allowed
when updating password for the user.

### Users Interface
User manager daemon, will create user objects for every user existing
in the system under object path `/xyz/openbmc_project/user/<user name>`.
Each user object can be handled through 'org.freedesktop.DBus.ObjectManager'.
User object will expose following properties and methods.

#### xyz.openbmc_project.User.Attributes interface
##### properties
* UserPrivilege - Privilege of the user.
* UserGroups - Groups to which the user belongs.
* UserEnabled - User enabled state.
* UserLockedForFailedAttempt - Locked or unlocked state of the user account.

#### xyz.openbmc_project.Object.Delete
#### methods
* Delete - To delete the user object in the system.

##Note
This interface doesn't provide ways to set / update password. The same must
be set / updated through pam_chauthtok() (PAM modules). This is to avoid
sending out password through D-Bus.
OpenPOWER on IntegriCloud