Interface Slice

All Known Implementing Classes:
BasicSlice

public interface Slice
A Slice is a set of policies, entities; in essence, it is the part of the Cedar database that is needed to answer a particular request. A slice is provided to the authorization engine to evaluate a request. The creation of a slice is very important, if the slice leaves out a relevant policy, the authorization engine may return an incorrect answer. The safe, easy choice is to have a slice always contain every policy and entity.
  • Method Details

    • getPolicies

      Map<String,String> getPolicies()
      Get the policy set.
      Returns:
      Map from policyIDs to Policy source strings.
    • getAttributes

      Map<String,Map<String,Value>> getAttributes()
      Get the attribute map.
      Returns:
      Map from EUIDs to attribute key/value maps.
    • getParents

      Map<String,List<String>> getParents()
      Get the parent map.
      Returns:
      Map from EUIDs to parent EUIDs.
    • getEntities

      Set<Entity> getEntities()
      Get the entities.
      Returns:
      Set of Entities.
    • getTemplates

      Map<String,String> getTemplates()
      Get the template policies.
      Returns:
      Map from template policy ID to template policy
    • getTemplateInstantiations

      List<TemplateInstantiation> getTemplateInstantiations()
      Get the template instantiations.
      Returns:
      List of template instatiations