Basic user manager D-Bus support
Basic User Manager D-Bus interfaces along
with signal to indicate other services.
Note: Removal of password.interfaces.yaml will be
done in separate commit
Change-Id: Ia547a0deae53eb25adf2cbc04c9d7a3593265a19
Signed-off-by: Richard Marian Thomaiyar <richard.marian.thomaiyar@linux.intel.com>
diff --git a/xyz/openbmc_project/User/Manager.interface.yaml b/xyz/openbmc_project/User/Manager.interface.yaml
new file mode 100644
index 0000000..a4c2d7b
--- /dev/null
+++ b/xyz/openbmc_project/User/Manager.interface.yaml
@@ -0,0 +1,83 @@
+description: >
+ Provides user management functionality.
+ As communication to this service is done through authenticated
+ & authorized session, there won't be any validation for both.
+
+methods:
+ - name: CreateUser
+ description: >
+ Creates a new user. If the user already exists, then it will throw
+ an error.
+ parameters:
+ - name: UserName
+ type: string
+ description: >
+ User name which has to be created.
+ - name: GroupNames
+ type: array[string]
+ description: >
+ List of groups to which the user has to be added.
+ - name: Privilege
+ type: string
+ description: >
+ Privilege of the user to be added.
+ - name: Enabled
+ type: boolean
+ description: >
+ User enabled / disabled.
+ errors:
+ - xyz.openbmc_project.Common.Error.InternalFailure
+ - xyz.openbmc_project.Common.Error.InsufficientPermission
+ - xyz.openbmc_project.Common.Error.InvalidArgument
+ - xyz.openbmc_project.User.Common.Error.UserNameExists
+ - xyz.openbmc_project.User.Common.Error.UserNameGroupFail
+ - xyz.openbmc_project.User.Common.Error.UserNamePrivFail
+ - xyz.openbmc_project.User.Common.Error.NoResource
+
+ - name: RenameUser
+ description: >
+ Rename's existing user to new one. All other properties of the
+ user will remain same.
+ parameters:
+ - name: UserName
+ type: string
+ description: >
+ User name which has to be updated.
+ - name: NewUserName
+ type: string
+ description: >
+ New User name to which user has to be updated.
+ errors:
+ - xyz.openbmc_project.Common.Error.InternalFailure
+ - xyz.openbmc_project.Common.Error.InsufficientPermission
+ - xyz.openbmc_project.Common.Error.InvalidArgument
+ - xyz.openbmc_project.User.Common.Error.UserNameDoesNotExist
+ - xyz.openbmc_project.User.Common.Error.UserNameExists
+ - xyz.openbmc_project.User.Common.Error.UserNameGroupFail
+ - xyz.openbmc_project.User.Common.Error.UserNamePrivFail
+ - xyz.openbmc_project.User.Common.Error.NoResource
+
+properties:
+ - name: AllPrivileges
+ type: array[string]
+ description: >
+ Lists all available user privileges in the system.
+
+ - name: AllGroups
+ type: array[string]
+ description: >
+ Lists all available groups in the system.
+
+signals:
+ - name: UserRenamed
+ description: >
+ Signal indicating user's name is updated.
+ properties:
+ - name: UserName
+ type: string
+ description: Name of the user which got renamed.
+ - name: NewUserName
+ type: string
+ description: New name of the user.
+
+# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4