> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cedarai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Roles

> Roles define what actions a user group can take.

<Info>
  A **role** is a named set of abilities (permissions). Roles are assigned to groups through bindings to grant access.
</Info>

<Frame caption="Roles list showing available permissions">
  <img src="https://mintcdn.com/cedaraiinc/3XL8_nY45kQdoBAs/images/admin/roles-list.png?fit=max&auto=format&n=3XL8_nY45kQdoBAs&q=85&s=e0dc83796a8cf8da5c7c260a04562410" alt="Roles list with search and permissions" width="1440" height="900" data-path="images/admin/roles-list.png" />
</Frame>

## Types of roles

<Tabs>
  <Tab title="Built-in roles" icon="box">
    Cedar provides built-in roles for common jobs. These are maintained by Cedar and cover typical use cases.

    **Examples:**

    * `arms.carrierAdmin` — Full carrier administration
    * `arms.carrierOperator` — Day-to-day operations
    * `arms.customerAdmin` — Customer-level administration
    * `arms.dataWarehouseAdmin` — Data Warehouse settings access (create, list, and read Data Warehouse configuration). Bind this role to a narrowly-scoped user group to limit Data Warehouse access to specific users.

    <Tip>
      Start with built-in roles if you're unsure what permissions you need.
    </Tip>
  </Tab>

  <Tab title="Feature sets" icon="grid-2">
    Cedar ships **[feature sets](/user-docs/iam/feature-sets)** — the columns of the IAM matrix on this page. Each column represents one product feature at one access level (View, Operate, or Manage), and a single checkbox grants every permission that feature needs.

    The big win: Cedar maintains the columns. When a feature gains a new capability, every role with that column checked picks it up automatically. Roles built from hand-picked permissions don't get that, so prefer matrix columns whenever possible.
  </Tab>

  <Tab title="Custom roles" icon="pen">
    Create custom roles when built-in roles don't match your needs exactly.

    **When to use:**

    * You need a specific combination of permissions
    * Built-in roles grant too much or too little access
    * You want to enforce least-privilege access

    <Warning>
      Keep custom roles focused. A role that does "everything" defeats the purpose of access control.
    </Warning>

    <Tip>
      Build custom roles by checking [feature set](/user-docs/iam/feature-sets) columns in the matrix instead of opening the raw permission picker. That way Cedar's ongoing curation flows through to your role — when a feature gains a new capability later, your role picks it up automatically.
    </Tip>
  </Tab>
</Tabs>

## Find and review roles

<Steps>
  <Step title="Search" icon="magnifying-glass">
    Use the search box to find roles by name. Type part of the name to filter the list.
  </Step>

  <Step title="Select a role" icon="hand-pointer">
    Click on a role to see its details and the permissions it includes.
  </Step>

  <Step title="Review permissions" icon="list-check">
    Check that the role includes the permissions you need—and nothing more.
  </Step>
</Steps>

## Role details

<Frame caption="Role detail view showing permissions">
  <img src="https://mintcdn.com/cedaraiinc/3XL8_nY45kQdoBAs/images/admin/roles-detail.png?fit=max&auto=format&n=3XL8_nY45kQdoBAs&q=85&s=75ed26ec20ec25b661de34875871700c" alt="Role details panel with permissions" width="1440" height="900" data-path="images/admin/roles-detail.png" />
</Frame>

## Edit role permissions

Click on any role to view and edit its permissions. The permissions panel shows all the capabilities included in the role.

<Frame caption="Edit role permissions view">
  <img src="https://mintcdn.com/cedaraiinc/3XL8_nY45kQdoBAs/images/admin/edit-role-permissions.png?fit=max&auto=format&n=3XL8_nY45kQdoBAs&q=85&s=ff1c4ace98105371ddf0040d0853b2cc" alt="Role permissions editor showing all included permissions" width="1440" height="900" data-path="images/admin/edit-role-permissions.png" />
</Frame>

The permissions view displays:

* **Role name and parent** — the role's identity and inheritance
* **Permission list** — all permissions included in this role
* **Permission groups** — permissions organized by feature area

<Tip>
  Use the search box to quickly find specific permissions within a role.
</Tip>

## Create a custom role

<Steps>
  <Step title="Click New Role" icon="plus">
    Select **New role** from the Roles page.
  </Step>

  <Step title="Name and describe" icon="pen">
    Give your role a clear name and description. The name should indicate what the role allows.

    | ✅ Good            | ❌ Avoid            |
    | ----------------- | ------------------ |
    | Inventory Viewer  | Custom Role 1      |
    | Billing Read-Only | John's Permissions |
  </Step>

  <Step title="Select permissions" icon="check-square">
    Choose the specific permissions this role should include. Only select what's needed.
  </Step>

  <Step title="Save and bind" icon="link">
    Save the role, then create a **binding** to grant it to a group.
  </Step>
</Steps>

<Frame caption="Create Role dialog">
  <img src="https://mintcdn.com/cedaraiinc/3XL8_nY45kQdoBAs/images/admin/create-role-dialog.png?fit=max&auto=format&n=3XL8_nY45kQdoBAs&q=85&s=2c9978721ae18567a07a675c952cb00e" alt="Create Role dialog with name, parent, and description fields" width="1440" height="900" data-path="images/admin/create-role-dialog.png" />
</Frame>

### Dialog fields explained

| Field           | Required | Description                                                        |
| --------------- | -------- | ------------------------------------------------------------------ |
| **Name**        | Yes      | Unique identifier for the role (e.g., `mycompany.inventoryViewer`) |
| **Parent**      | Yes      | The parent role this role inherits from                            |
| **Description** | No       | Brief description of what this role allows                         |

<Tip>
  Custom roles inherit permissions from their parent role. Choose a parent that has the base permissions you need, then the child role can add or restrict further.
</Tip>

## Best practices

<AccordionGroup>
  <Accordion title="Start with built-in roles" icon="box" defaultOpen>
    Built-in roles cover most common scenarios. Only create custom roles when you have a specific need that isn't met.
  </Accordion>

  <Accordion title="Keep roles focused" icon="bullseye">
    Each role should represent a clear job function. If you find yourself adding unrelated permissions, consider creating multiple roles instead.
  </Accordion>

  <Accordion title="Use descriptive names" icon="tag">
    Anyone should be able to understand what a role does from its name. Include the resource type and action level (e.g., "Inventory Editor", "Billing Viewer").
  </Accordion>

  <Accordion title="Document custom roles" icon="file-lines">
    For custom roles, add a clear description explaining what the role is for and who should have it.
  </Accordion>
</AccordionGroup>

## Related: Admin Portal

<CardGroup cols={2}>
  <Card title="Bindings" href="/user-docs/admin/bindings" icon="link">
    Connect roles to groups
  </Card>

  <Card title="User Groups" href="/user-docs/admin/user-groups" icon="users">
    Manage the teams that get roles
  </Card>

  <Card title="Glossary" href="/user-docs/admin/glossary" icon="book">
    Key terms explained
  </Card>

  <Card title="Activity Log" href="/user-docs/admin/activity-log" icon="clock-rotate-left">
    Track role changes
  </Card>
</CardGroup>

## Related: IAM Concepts

<CardGroup cols={2}>
  <Card title="Feature Sets" href="/user-docs/iam/feature-sets" icon="grid-2">
    The columns of this page's IAM matrix — Cedar curates them so your roles stay current
  </Card>

  <Card title="Policies & Roles" href="/user-docs/iam/policies-and-roles" icon="scroll">
    How roles fit into the IAM policy model
  </Card>

  <Card title="IAM Concepts" href="/user-docs/iam/concepts" icon="list-tree">
    Deep dive into permissions and conditions
  </Card>

  <Card title="Customer Portal" href="/user-docs/iam/customer-portal" icon="building-user">
    Customer-specific role examples
  </Card>
</CardGroup>
