diff options
| author | Yoggzo <yogg@epsina.com> | 2016-02-08 17:10:24 +0100 |
|---|---|---|
| committer | Yoggzo <yogg@epsina.com> | 2016-02-08 17:10:24 +0100 |
| commit | f1585a13323d408b6917a514bed1920aec3780f0 (patch) | |
| tree | b98a23443d20af008cbb8eca16a7aff7c9aa823c /server/core/Identity.php | |
| parent | 43b65e1dbb53300d076f5885b5393ff68e248dd1 (diff) | |
| parent | 1cd1ae92f414573942262f65dc1644e8ff9bb8f6 (diff) | |
Merge branch 'develop' into Evan
mise a jour
Diffstat (limited to 'server/core/Identity.php')
| -rwxr-xr-x[-rw-r--r--] | server/core/Identity.php | 942 |
1 files changed, 931 insertions, 11 deletions
diff --git a/server/core/Identity.php b/server/core/Identity.php index 343ed15..7b6293c 100644..100755 --- a/server/core/Identity.php +++ b/server/core/Identity.php @@ -1,19 +1,939 @@ <?php +/** +* File containing the identity Class. +* +* @version 1.0 Initialisation of this file +* @since 1.0 Core application's file +* +* @author Eole 'eoledev at outlook . fr' +* +* @todo Complete the functions and finish the descriptions +*/ + + +/** +* Identity Class of the back-end application +* +* This class allow the communication between the front-end application and +* the library which allow to send requests to an Openstack instance. +* +*/ +class identity implements Core{ + + /** @var App $app protected, contains the main app object */ + protected $app; + + /** @var OpenStack\Identity $libClass protected, contains the library Identity object */ + protected $libClass; -class identity { + /** @var array $actions protected, contains the functions which can be call by the front-end */ + protected $actions = array(); - protected $oidentity; + /** + * identity constructor + * + * @param App $app the main app object + * + * @throws [Type] [<description>] + * + * @return identity + */ + public function __construct($app){ - public function __construct($ostack, $apiP){ + $this->app = $app; + $this->libClass = $app->getLibClass("Identity"); - $this->oidentity = $ostack->identityV3(); - $this->plugins = $apiP; + } + $credentials = array(); + + /** + * Add a credential for the given user/project. + * + * Create a secret/access pair for use with ec2 style auth. + * This operation will generates a new set of credentials that map the user/project pair. + * + * @throws [Type] [<description>] + * + * @return void + */ + $credentials["addCredential"] = function(){ + + } - - public function genToken(){ - global $Args; - $token = $this->oidentity->generateToken($Args); - return $token; - } + + /** + * List the credentials for a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $credentials["listCredentials"] = function(){ + + + } + + /** + * Retrieve a user’s access/secret pair by the access key. + * + * @throws [Type] [<description>] + * + * @return void + */ + $credentials["showCredential"] = function(){ + + + } + + /** + * Update a user’s access/secret pair. + * + * @throws [Type] [<description>] + * + * @return void + */ + $credentials["updateCredential"] = function(){ + + + } + + /** + * Delete a user’s access/secret pair. + * + * @throws [Type] [<description>] + * + * @return void + */ + $credentials["deleteCredential"] = function(){ + + + } + + $domains = array(); + + /** + * Add a domain to an OpenStack instance. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["addDomain"] = function(){ + + + } + + /** + * Retrieve the different domain's list. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["listDomains"] = function(){ + + + } + + /** + * Retrieve the details of a given domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["showDomain"] = function(){ + + + } + + /** + * Update the given domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["updateDomain"] = function(){ + + + } + + /** + * Delete the given domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["deleteDomain"] = function(){ + + + } + + /** + * Retrieve the different roles of a given user in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["listRolesDomainUser"] = function(){ + + + } + + /** + * Grant a role to a given user in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["grantRoleDomainUser"] = function(){ + + + } + + /** + * Verify that a user has a given role in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["checkRoleDomainUser"] = function(){ + + + } + + /** + * Delete a role for a given user in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["revokeRoleDomainUser"] = function(){ + + + } + + /** + * Retrieve the roles of a given group in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["listRolesDomainGroup"] = function(){ + + + } + + /** + * Add a role to a given group in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["grantRoleDomainGroup"] = function(){ + + + } + + /** + * Verify that a role is associated with a given group in a domain. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["checkRoleDomainGroup"] = function(){ + + + } + + /** + * Delete a role for a given group in a domain. + * + * A *description*, that can span multiple lines, to go _in-depth_ into the details of this element + * and to provide some background information or textual references. + * + * @param string $myArgument With a *description* of this argument, these may also + * span multiple lines. + * + * @throws [Type] [<description>] + * + * @return void + */ + $domains["revokeRoleDomainGroup"] = function(){ + + + } + + $endpoints = array(); + + /** + * Add an endpoint to the Openstack instance + * + * @throws [Type] [<description>] + * + * @return void + */ + $endpoints["addEndpoint"] = function(){ + + + } + + /** + * Retrieve the endpoint for the given id + * + * @throws [Type] [<description>] + * + * @return void + */ + $endpoints["getEndpoint"] = function(){ + + + } + + /** + * Retrieve the list of the different endpoints + * + * @throws [Type] [<description>] + * + * @return void + */ + $endpoints["listEndpoints"] = function(){ + + + } + + /** + * Update a given endpoint + * + * @throws [Type] [<description>] + * + * @return void + */ + $endpoints["updateEndpoint"] = function(){ + + + } + + /** + * Delete a given endpoint + * + * @throws [Type] [<description>] + * + * @return void + */ + $endpoints["deleteEndpoint"] = function(){ + + + } + + $groups = array(); + + /** + * Add a group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["addGroup"] = function(){ + + + } + + /** + * Retrieve the group's list. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["listGroups"] = function(){ + + + } + + /** + * Retrieve the details of a given group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["showGroup"] = function(){ + + + } + + /** + * Update a given group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["updateGroup"] = function(){ + + + } + + /** + * Delete the given group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["deleteGroup"] = function(){ + + + } + + /** + * Retrieve the users of a given group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["listGroupUsers"] = function(){ + + + } + + /** + * Add a user to a group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["addGroupUser"] = function(){ + + + } + + /** + * Remove a user from a given group. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["removeGroupUser"] = function(){ + + + } + + /** + * Check if a group contains a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $groups["checkGroupUser"] = function(){ + + + } + + $policies = array(); + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $policies["addPolicies"] = function(){ + + + } + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $policies["listPolicies"] = function(){ + + + } + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $policies["showPolicie"] = function(){ + + + } + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $policies["updatePolicies"] = function(){ + + + } + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $policies["deletePolicies"] = function(){ + + + } + + $projects = array(); + + /** + * Add a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["addProject"] = function(){ + + + } + + /** + * Retrieve the different projects. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["listProjects"] = function(){ + + + } + + /** + * Retrieve the details of a given project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["showProject"] = function(){ + + + } + + /** + * Update a given project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["updateProject"] = function(){ + + + } + + /** + * Delete a given project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["deleteProject"] = function(){ + + + } + + /** + * List the roles of a given user in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["listRolesProjectUser"] = function(){ + + + } + + /** + * Grant a role to an user in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["grantRoleProjectUser"] = function(){ + + + } + + /** + * Check if a given user has a role in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["checkRoleProjectUser"] = function(){ + + + } + + /** + * Delete a role for a given user in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["revokeRoleProjectUser"] = function(){ + + + } + + /** + * List the roles of a group in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["listRolesProjectGroup"] = function(){ + + + } + + /** + * Add a role to a group in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["grantRoleProjectGroup"] = function(){ + + + } + + /** + * Check if a group has a given role in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["checkRoleProjectGroup"] = function(){ + + + } + + /** + * Delete a role for a group in a project. + * + * @throws [Type] [<description>] + * + * @return void + */ + $projects["revokeRoleProjectGroup"] = function(){ + + + } + + $roles = array(); + + /** + * Add a role. + * + * @throws [Type] [<description>] + * + * @return void + */ + $roles["addRole"] = function(){ + + + } + + /** + * List the different roles + * + * @throws [Type] [<description>] + * + * @return void + */ + $roles["listRoles"] = function(){ + + + } + + /** + * @todo + * + * @throws [Type] [<description>] + * + * @return void + */ + $roles["listRoleAssignements"] = function(){ + + + } + + $services = array(); + + /** + * Add a service. + * + * @throws [Type] [<description>] + * + * @return void + */ + $services["addService"] = function(){ + + + } + + /** + * Retrieve the different services. + * + * @throws [Type] [<description>] + * + * @return void + */ + $services["listServices"] = function(){ + + + } + + /** + * Retrieve the details for a given service. + * + * @throws [Type] [<description>] + * + * @return void + */ + $services["showService"] = function(){ + + + } + + /** + * Delete a given service. + * + * @throws [Type] [<description>] + * + * @return void + */ + $services["deleteService"] = function(){ + + + } + + $tokens = array(); + + /** + * Generate a new token for a given user id. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["genTokenUserID"] = function(){ + + + } + + /** + * Generate a new token for a given user name. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["genTokenUserName"] = function(){ + + + } + + /** + * Generate a new token from another token ID. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["geneTokenID"] = function(){ + + + } + + /** + * Generate a new token scoped by a project ID. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["genTokenScopedProjectID"] = function(){ + + + } + + /** + * Generate a new token scoped by a project name. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["genTokenScopedProjectName"] = function(){ + + + } + + /** + * Check if a token is validate. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["validateToken"] = function(){ + + + } + + /** + * Delete a given token. + * + * @throws [Type] [<description>] + * + * @return void + */ + $tokens["revokeToken"] = function(){ + + + } + + $users = array(); + + /** + * Add a new user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["addUser"] = function(){ + + + } + + /** + * Retrieve the different users. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["listUsers"] = function(){ + + + } + + /** + * Retrieve the details of a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["showUser"] = function(){ + + + } + + /** + * Update a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["updateUser"] = function(){ + + + } + + /** + * Delete a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["deleteUser"] = function(){ + + + } + + /** + * Retrieve the groups which contains a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["listUserGroups"] = function(){ + + + } + + /** + * Retrieve the projects which contains a given user. + * + * @throws [Type] [<description>] + * + * @return void + */ + $users["listUserProjects"] = function(){ + + + } + + $actions["Credentials"] = $credentials; + $actions["Domains"] = $domains; + $actions["Endpoints"] = $endpoints; + $actions["Groups"] = $groups; + $actions["Policies"] = $policies; + $actions["Projects"] = $projects; + $actions["Roles"] = $roles; + $actions["Services"] = $services; + $actions["Tokens"] = $tokens; + $actions["Users"] = $users; } |
