IPermissionSystem

From Virtual World Web Wiki
Jump to: navigation, search

The object system is a primary layer one interface. It provides methods for working with system permssions.

Remarks [edit]

Methods

bool AreaPermissionCheck(Guid sessionID, Guid areaID, Guid permissionID)
Performs a hypothetical area permission check on the service provider. This is moderately costly, but good for navigation barrier checks.
bool AreaPermissionCheck(Guid sessionID, Guid permissionID)
Performs a live area permission check on the service provider. This is moderately costly, but good for testing permssions of remote online users.
bool AreaPermissionCheck(IIdentityBase identity, Guid permissionID)
Performs an live area permission check. These are super cheap. Call this as often as you like. Same as calling identity.HasAreaPermission(permissionID).
string GetPermissionIdentifier(Guid permissionTypeID)
Gets the translatable identifier for a permission
IEnumerable<Guid> GetSecurablesWithAccess(Guid accountID, Guid permissionID)
Gets a list of IDs of securables which the specified account holds the specified permission on
IEnumerable<Guid> GetSecurablesWithAccess(Guid accountID)
Gets a list of IDs of securables which the specified account holds any permission on
IVirtualIdentity GetVirtualIdentity(IIdentityBase identity = NULL, Guid? areaID = NULL)
Creates a virtual identity and places it hypothetically in a given area so permissions checks can be done
bool PermissionCheck(IIdentityBase identity, Guid permissionID, Guid securableID)
Checks to see if a given connection has a permission on some securable
bool PermissionCheck(Guid accountID, Guid permissionID, Guid securableID)
Checks to see if a given accountID has a permission on some securable
Guid PermissionCreate(string identifier, string description, Guid groupID, Guid? permissionID = NULL)
Creates a new permission type in a given permission type group
Guid PermissionDeny(Guid securableID, Guid entityID, Guid permissionID, bool force = false)
Denies an entity a permission on some securable (not the same as a revoke! make sure you understand the difference!)
Guid PermissionGrant(Guid securableID, Guid entityID, Guid permissionID, bool force = false)
Grants an entity a permission on some securable
Guid PermissionGroupCreate(string identifier, Guid? groupID = NULL)
Creates a new permission type group
Guid PermissionGroupLookup(string identifier)
Finds the ID of an existing permission type group
Guid PermissionLookup(string identifier, Guid groupID)
Finds the ID of an existing permission type
bool PermissionRevoke(Guid securableID, Guid entityID, Guid permissionID)
Revokes an entity's permission on some securable
bool PermissionRevoke(Guid permssionEntryID)
Revokes a specific permission entry by ID