Files
DomFramework/src/Authorization.php
2023-04-13 14:36:03 +02:00

102 lines
2.9 KiB
PHP

<?php
/** DomFramework
* @package domframework
* @author Dominique Fournier <dominique@fournier38.fr>
* @license BSD
*/
namespace Domframework;
/** All the needed functions to authorize or deny access to an authenticated
user */
class Authorization
{
/** Separator between differents modules/objects */
private $separator = "/";
/** The user ID of the authenticated user */
public $authiduser = ""; // user id
/** The groups ID of the authenticated user */
public $authgroups = array(); // List of user's groups id
/** Establish a connexion to the authorization database */
public function connect()
{
}
/** Create the structure to store the authorization database */
public function initialize()
{
}
/** Return if the user right is NONE, READ, WRITE, EXECUTE
if the object doesn't exists, or is not readable, throw an exception
@param string $object The object path to examine
@return string NONE, READ, WRITE, EXECUTE */
public function validate($object)
{
return "NONE";
}
/** Add a new object, with owner and group, and mode bits
@param string $object Object path to add
@param integer $owner Owner ID of the object
@param integer $group Group ID of the object
@param integer $modbits Bits of authorization */
public function add($object, $owner, $group, $modbits)
{
}
/** Remove the information about an object and all its sub-objects
@param string $object Object path to drop */
public function drop($object)
{
}
/** Change the owner of an object
Need to be the root administrator
@param string $object Object path to add
@param integer $owner Owner ID of the object */
public function chown($object, $owner)
{
}
/** Change the group of an object
Need to be the owner of the object or the root administrator
@param string $object Object path to add
@param integer $group Group ID of the object */
public function chgrp($object, $group)
{
}
/** Change mode bits for an object
Need to be the owner of the object or the root administrator
@param string $object Object path to change
@param integer $mod Bits of authorization */
public function chmod($object, $mod)
{
}
/** Return the mode bits for an object if all his parents are readable for
the user
@param string $object Object path to examine */
public function lsmod($object)
{
}
/** Return the owner for an object if all his parents are readable for
the user
@param string $object Object path to examine */
public function lsown($object)
{
}
/** Return the owner for an object if all his parents are readable for
the user
@param string $object Object path to examine */
public function lsgrp($object)
{
}
}