Qare Internals
    SQL Tables
        Account
        appData
        appTable
        Applications
        Inbox
        KeyPair
        localPrivileges
        message
        pendingMessage
        privilege
        project
        registerInfo
        RegisterPending
        remoteAccount
        session
        System
        user
        userDelegations
    Schema
    Plugins
    API
 Site Map
 
userDelegations Table
The user permissions table is a consolidation of all the permissions granted to a single delegee across all systems. The user permissions table is maintained on the user's HOME QARE system. Any changes to a user's permissions on any remote system results in notifications being sent to that user's HOME QARE system. The user permissions table is used to inform the user of various systems where web services can be accessed. It is also used when creating cross-system (federated) views of the network.
 
 QareApplications
        AppDir
        ChangePassword
        Count
        CreateAccount
        Delegation
        DelegationDisplay
        DeleteRemote
        HelloWorld
        Inbox
        Login
        Logout
        Pending
        Ping
        Register
        RemoteAccount
        UserGroups
 



FIELD
TYPE
DESCRIPTION
userId
int(10) unsigned
The user identifier whom the privilege inormation belong to(links to the User table)
applicationId
int(10) unsigned (PRI)
The application identifier for which the privileges has been assigned(linked with the application table.
privilegeId
int(10) unsigned (PRI)
The privilege identifier linked to the privilege table.
systemId
int(10) unsigned (PRI)
The system where the permission has been granted(links to the System table)
grantorId
int(10) unsigned (PRI)
The grantor identifier(This is the person who granted the permission to the delegee ,links to the user table)
delegeeId
int(10) unsigned (PRI)
The delegee identifier( This is the person who has received a permission,links to the user table)
projectId
int(11) (PRI)
The project identifier (The name of the project for which the permission has been granted, links to te project table)
grantorProjectId
int(11) (PRI)
The grantors project identifier
grandGrantorId
int(11) (PRI)
The grandgrantor identifier, The person who has granted the permission to the grantor.
delegationId
int(11) (PRI)
The row identifier
aquisitionDate
datetime
The date when the permission has been granted.
delegationLimit
int(11)
The total number of times the delegee can grant this permission, directly or indirectly. The minimum value of this field is 1, as the delegee is also included in the count.
delegationCount
int(11)
The total number of delegations made to-date by the delegee. (Initial value is 1).
Example: when the delegee grants to another user a permision with a delegation limit of 3, then the delegee's count is increased by 3. But the delegation count must not exceed the delegation limit.
delegationDepth
int(11)
With 0 delegation depth the delegee can not further delegate permissions. A depth of 1 implies that the permission can be directly delegated to any number of delegees, but can not then be subsequently delegated. A depth of -1 places no constraint on delegation depth.
delegationDistance
int(11)
In the delegation table, all of the user's permissions have a distance of 0. A distance of 1 indicates a permission which was directly delegated, while indirect delegations have a greater distance. When a user has Super User privilege on a particular system, then the user's delegation table includes that system's entire local permissions table. And if there are other users with Super User privilege, their permissions are shown in the delegation table with a distance of 1.