---
title: "Flexible policy conditions powered by Google CEL"
description: "Experiment with writing CEL conditions, enjoy a seamless policy development experience."
canonical: "https://www.cerbos.dev/features-benefits-and-use-cases/flexible-policy-conditions-powered-by-google-cel"
source: "https://www.cerbos.dev/features-benefits-and-use-cases/flexible-policy-conditions-powered-by-google-cel"
---

# Flexible policy conditions powered by Google CEL

Experiment with writing CEL conditions, enjoy a seamless policy development experience.

## Seamless policy development

Google Common Expression Language, CEL, enables Cerbos policies to offer powerful capability to define conditions that are evaluated against the data provided in the request. CEL is a robust language designed for simplicity, speed, and safety. With Cerbos' interactive REPL, you can experiment with writing CEL conditions, providing a seamless experience for policy development.

## Key features

### Operators and functions:
- **Logical operators:** Define conditions using common logical operations to check for values, compare attributes and more.
- **Built-in functions:** Utilize a wide range of built-in functions and operators in CEL such as working with lists, maps and timestamps.
- **Cerbos-specific extensions:** Use Cerbos-specific functions for handling hierarchies, IP addresses, and more.

### Policy variables and auxiliary data:
- **Avoid duplication:** Define variables to avoid repetitive condition expressions.
- **Auxiliary data:** Access additional data sources, like JWT, in your policies.

### Basic CEL condition example

```yaml
condition:
 match:
    all:
      of:
        - expr: request.resource.attr.status == "PENDING_APPROVAL"
        - expr: >
            "GB" in request.resource.attr.geographies
```

Using the power of CEL, conditions can be as fine-grained as your business requirements, making use of all the request context to compute an authorization decision.

## Links to resources

- [Documentation](https://docs.cerbos.dev/cerbos/latest/policies/conditions.html) — Learn more about conditions
- [ABAC](https://www.cerbos.dev/features-benefits-and-use-cases/abac) — Ensure that only users with the necessary attributes can access certain resources or perform specific actions
- [Google CEL](https://github.com/google/cel-spec) — Learn more on GitHub
- [Community insights](https://community.cerbos.dev/?_gl=1*5ozo82*_ga*MTk1NjcwNzQ1MC4xNjY2Mjc5NjI2*_ga_8G3G3MS838*MTY5NDE5MTE5Ny41MjcuMS4xNjk0MTkyNzgyLjIwLjAuMA) — Engage with the Cerbos community to share experiences and insights on CEL

