Class PolicyEvaluator

java.lang.Object
org.openmetadata.service.security.policyevaluator.PolicyEvaluator

public class PolicyEvaluator extends Object
PolicyEvaluator for metadata operations based on OpenMetadata's internal Policy format to make access decisions.

Policy Evaluation uses the following:

  • Policy which is a collection of `Allow` and `Deny` rules Rule.
  • PolicyEvaluator gets OperationContext with information about the operation, ResourceContext with information about the resource on which the operations is being performed, and SubjectContext with information about the user performing the operation.
  • First, all the Deny rules are applied and if there is rule match, then the operation is denied.
  • Second, all the Allow rules are applied and if there is rule match, then the operation is allowed.
  • All operations that don't a match rule are not allowed.