×

Flattening permission trees in a virtualization environment

  • US 9,178,886 B2
  • Filed: 08/29/2012
  • Issued: 11/03/2015
  • Est. Priority Date: 08/29/2012
  • Status: Active Grant
First Claim
Patent Images

1. A method comprising:

  • receiving a permission request, the request indicating a user and an entity in a virtual machine system;

    flattening, by a processing device, a permissions database associated with the virtual machine system to generate a flattened database view, wherein the permissions database to store descriptive labels of entities in the virtual machine system, and wherein the flattened database view defines permissions for the user to access the entities in the virtual machine system in view of the descriptive labels, wherein flattening the permissions database comprises;

    identifying a first set of entities in the virtual machine system for which the user has explicit permissions defined in the permissions database,identifying a second set of entities in the virtual machine system for which a role to which the user is assigned has explicit permissions defined in the permissions database;

    identifying a third set of entities in the virtual machine system that inherit the explicit permissions of entities in the first and second sets of entities, wherein entities in the third set of entities are assigned child labels in a labeling hierarchy of entities in the virtual machine system, andcreating a separate entry in the flattened database view for each unique combination of the user and one of the entities in the first, second and third sets of entities in the virtual machine system, wherein the flattened database view comprises a stored query accessible as a virtual table in the permissions database computed from data stored in the permissions database;

    determining, using the flattened database view, whether the user has permission to access the entity in the virtual machine system, wherein determining whether the user has permission to access the entity in the virtual machine system comprises issuing a single query to the flattened database view for an entry comprising the user and the entity; and

    returning an indication of whether the user has permission to access the entity in the virtual machine system.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×