---
id: "polaris"
type: "component"
kind: "data-catalog"
provider: "default"
category: "data"
docs: "https://polaris.apache.org/releases/1.0.0/access-control/"
url: "https://localhost:3000/catalogue/components/polaris"
---

# Apache Polaris

Iceberg REST catalog with role-based access control and short-lived vended storage credentials.

| | |
|---|---|
| Provider | [default](https://localhost:3000/catalogue?provider=default) |
| Kind | [Data catalog](https://localhost:3000/catalogue/kinds/data-catalog) |
| Category | Data |
| Official docs | [https://polaris.apache.org/releases/1.0.0/access-control/](https://polaris.apache.org/releases/1.0.0/access-control/) |

## Properties

| property | type | values | required | kind default | this component |
|---|---|---|---|---|---|
| `accessPolicyEnforcement` | boolean | — | no | — | **true** |
| `catalogType` | enum | `internal`, `external` | no | "internal" | inherited |
| `classification` | boolean | — | no | — | **false** |
| `credentialVending` | boolean | — | no | true | inherited |
| `fineGrainedAccess` | boolean | — | no | false | inherited |
| `lineage` | boolean | — | no | — | **false** |
| `managed` | boolean | — | no | false | **false** |
| `scanSchedule` | enum | `manual`, `daily`, `weekly` | no | — | inherited |
| `sourceCount` | integer | — | no | — | inherited |
| `tableFormat` | enum | `iceberg` | no | "iceberg" | inherited |

Bold values are the ones this component pins.

## Rules that apply · 0

No rule selects this kind or its category.

## Other products of the same kind · 23

- [AWS Application Discovery Service](https://localhost:3000/catalogue/components/aws-application-discovery-service.md) `aws-application-discovery-service` — aws
- [Amazon DataZone](https://localhost:3000/catalogue/components/aws-datazone.md) `aws-datazone` — aws
- [AWS Glue Data Catalog](https://localhost:3000/catalogue/components/aws-glue-data-catalog.md) `aws-glue-data-catalog` — aws
- [Azure API Center](https://localhost:3000/catalogue/components/azure-api-center.md) `azure-api-center` — azure
- [Microsoft Purview](https://localhost:3000/catalogue/components/azure-purview.md) `azure-purview` — azure
- [R2 Data Catalog](https://localhost:3000/catalogue/components/cloudflare-r2-data-catalog.md) `cloudflare-r2-data-catalog` — cloudflare
- [Alation](https://localhost:3000/catalogue/components/alation.md) `alation` — default
- [Amundsen](https://localhost:3000/catalogue/components/amundsen.md) `amundsen` — default
- [Apache Atlas](https://localhost:3000/catalogue/components/atlas.md) `atlas` — default
- [Collibra](https://localhost:3000/catalogue/components/collibra.md) `collibra` — default
- [Generic data catalog](https://localhost:3000/catalogue/components/data-catalog.md) `data-catalog` — default
- [DataHub](https://localhost:3000/catalogue/components/datahub.md) `datahub` — default
- [OpenMetadata](https://localhost:3000/catalogue/components/openmetadata.md) `openmetadata` — default
- [Unity Catalog](https://localhost:3000/catalogue/components/unity-catalog.md) `unity-catalog` — default
- [Agent Registry](https://localhost:3000/catalogue/components/google-agent-registry.md) `google-agent-registry` — gcp
- [BigQuery sharing (Analytics Hub)](https://localhost:3000/catalogue/components/google-analytics-hub.md) `google-analytics-hub` — gcp
- [BigLake](https://localhost:3000/catalogue/components/google-biglake.md) `google-biglake` — gcp
- [Cloud API Registry](https://localhost:3000/catalogue/components/google-cloud-api-registry.md) `google-cloud-api-registry` — gcp
- [Cloud Asset Inventory](https://localhost:3000/catalogue/components/google-cloud-asset-inventory.md) `google-cloud-asset-inventory` — gcp
- [Dataplex Universal Catalog](https://localhost:3000/catalogue/components/google-dataplex.md) `google-dataplex` — gcp
- [Dataproc Metastore](https://localhost:3000/catalogue/components/google-dataproc-metastore.md) `google-dataproc-metastore` — gcp
- [IBM Data Product Hub](https://localhost:3000/catalogue/components/ibm-data-product-hub.md) `ibm-data-product-hub` — ibm
- [OCI Data Catalog](https://localhost:3000/catalogue/components/oci-data-catalog.md) `oci-data-catalog` — oci

## Use it in a design

```yaml
nodes:
  - { id: "polaris", component: "polaris" }
```

## Source (`component` YAML, verbatim)

```yaml
# yaml-language-server: $schema=../../schema/component.schema.json
# Apache Polaris: open-source Iceberg REST catalog serving Spark, Trino, Flink and others.
# "Access control": RBAC over principals, principal roles and catalog roles; TABLE_READ_DATA and
# TABLE_WRITE_DATA hand out short-lived storage credentials scoped to the table location, so the
# object store itself is what enforces the grant. Grants are catalog-level, not fine-grained.
schemaVersion: "1"
type: "component"
id: "polaris"
kind: "data-catalog"
provider: "default"
docs: "https://polaris.apache.org/releases/1.0.0/access-control/"
defaults:
  managed: false
  accessPolicyEnforcement: true
  classification: false
  lineage: false
properties:
  credentialVending:
    type: "boolean"
    default: true
  catalogType:
    type: "enum"
    values: ["internal", "external"]
    default: "internal"
  tableFormat:
    type: "enum"
    values: ["iceberg"]
    default: "iceberg"
  fineGrainedAccess:
    type: "boolean"
    default: false
```

Human page: https://localhost:3000/catalogue/components/polaris
