[Yandex Cloud documentation](../../index.md) > [Yandex Audit Trails](../index.md) > Access management

# Access management Audit Trails

In this section, you will learn:

* [Which resources you can assign a role for](#resources).
* [Which roles exist in the service](#roles-list).

## Access management {#about-access-control}

[Yandex Identity and Access Management](../../iam/index.md) checks all operations in Yandex Cloud. If an entity does not have required permissions, IAM returns an error.


To grant permissions for a resource, [assign](../../iam/operations/roles/grant.md) the relevant resource roles to an entity performing operations. You can assign roles to a [Yandex account](../../iam/concepts/users/accounts.md#passport), [service account](../../iam/concepts/users/service-accounts.md), [local user](../../iam/concepts/users/accounts.md#local), [federated user](../../iam/concepts/federations.md), [user group](../../organization/operations/manage-groups.md), [system group](../../iam/concepts/access-control/system-group.md), or [public group](../../iam/concepts/access-control/public-group.md). For more information, see [How access management works in Yandex Cloud](../../iam/concepts/access-control/index.md).

Roles for a resource can be assigned by users who have the `audit-trails.admin` role or one of the following roles for that resource:

* `admin`
* `resource-manager.admin`
* `organization-manager.admin`
* `resource-manager.clouds.owner`
* `organization-manager.organizations.owner`

## Which resources you can assign a role for {#resources}

You can assign a role to an [organization](../../organization/concepts/organization.md), [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), or [folder](../../resource-manager/concepts/resources-hierarchy.md#folder). The roles assigned to organizations, clouds, and folders also apply to their nested resources.

You can assign a role for a [trail](../concepts/trail.md) via the Yandex Cloud [CLI](../../cli/cli-ref/audit-trails/cli-ref/trail/add-access-binding.md) or [API](../api-ref/authentication.md).

## Which roles exist in the service {#roles-list}

The chart below shows service’s roles and their permission inheritance. For example, `editor` inherits all `viewer` permissions. You can find role descriptions below the chart.

![image](../../_assets/audit-trails/at-role-diagram.svg)

### Service roles {#service-roles}

#### audit-trails.auditor {#at-auditor}

The `audit-trails.auditor` role enables viewing the list of [trails](../concepts/trail.md) and info on them, as well as the info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), [folder](../../resource-manager/concepts/resources-hierarchy.md#folder), and Audit Trails [quotas](../concepts/limits.md#audit-trails-quotas).

#### audit-trails.viewer {#at-viewer}

The `audit-trails.viewer` role enables reading [audit logs](../concepts/index.md) and viewing the list of [trails](../concepts/trail.md) and info on them, as well as the info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), [folder](../../resource-manager/concepts/resources-hierarchy.md#folder), and Audit Trails [quotas](../concepts/limits.md#audit-trails-quotas).

This role includes the `audit-trails.auditor` permissions.

#### audit-trails.editor {#at-editor}

The `audit-trails.editor` role enables managing trails and reading audit logs.

Users with this role can:
* View the list of [trails](../concepts/trail.md) and info on them, as well as create, modify, and delete them.
* Read [audit logs](../concepts/index.md).
* View info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud) and [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).
* View info on the Audit Trails [quotas](../concepts/limits.md#audit-trails-quotas).

This role includes the `audit-trails.viewer` permissions.

#### audit-trails.admin {#at-admin}

The `audit-trails.admin` role enables managing trails and user access to them, as well as reading audit logs.

Users with this role can:
* View info on [access permissions](../../iam/concepts/access-control/index.md) assigned to [trails](../concepts/trail.md) and modify such permissions.
* View the list of trails and info on them, as well as create, modify, and delete them.
* Read [audit logs](../concepts/index.md).
* View info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud) and [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).
* View info on the Audit Trails [quotas](../concepts/limits.md#audit-trails-quotas).

This role includes the `audit-trails.editor` permissions.

#### audit-trails.configViewer {#at-configviewer}

The `audit-trails.configViewer` role enables viewing the list of trails and info on them, as well as the info on the relevant cloud, folder, and Audit Trails quotas.

This role is no longer available. Please use `audit-trails.auditor` instead.

### Primitive roles {#primitive-roles}

Primitive roles allow users to perform actions in all Yandex Cloud [services](../../overview/concepts/services.md).

#### auditor {#auditor}

The `auditor` role grants a permission to read configuration and metadata of any Yandex Cloud resources without any access to data.

For instance, users with this role can:
* View info on a [resource](../../resource-manager/concepts/resources-hierarchy.md).
* View the resource metadata.
* View the list of operations with a resource.

`auditor` is the most secure role that does not grant any access to the [service](../../overview/concepts/services.md) data. This role suits the users who need minimum access to the Yandex Cloud resources.

#### viewer {#viewer}

The `viewer` role grants the permissions to read the info on any Yandex Cloud [resources](../../resource-manager/concepts/resources-hierarchy.md).

This role includes the `auditor` permissions.

Unlike `auditor`, the `viewer` role provides access to [service](../../overview/concepts/services.md) data in read mode.

#### editor {#editor}

The `editor` role provides permissions to manage any Yandex Cloud [resources](../../resource-manager/concepts/resources-hierarchy.md), except for assigning roles to other users, transferring [organization](../../organization/concepts/organization.md) ownership, removing an organization, and deleting Key Management Service [encryption keys](../../kms/concepts/index.md).

For instance, users with this role can create, modify, and delete resources.

This role includes the `viewer` permissions.

#### admin {#admin}

The `admin` role enables assigning any roles, except for `resource-manager.clouds.owner` and `organization-manager.organizations.owner`, and provides permissions to manage any Yandex Cloud [resources](../../resource-manager/concepts/resources-hierarchy.md) (except for transferring [organization](../../organization/concepts/organization.md) ownership and removing an organization).

Prior to assigning the `admin` role for an organization, [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), or [billing account](../../billing/concepts/billing-account.md), make sure to check out the information on protecting [privileged accounts](../../security/standard/all.md#privileged-users).

This role includes the `editor` permissions.

Instead of primitive roles, we recommend using service roles with more granular access control, allowing you to implement the [least privilege principle](../../security/standard/all.md#min-privileges).

For more information on primitive roles, see the [Yandex Cloud role reference](../../iam/roles-reference.md#primitive-roles).

## What roles do I need {#choosing-roles}

The table shows actions and minimum roles required to perform them. You can always assign a role offering more permissions than the one specified in the table. For example, you can assign `audit-trails.editor` instead of `audit-trails.configViewer`.

Action | User role
----- | -----
Viewing information about a trail | `audit-trails.auditor` 
Collecting and viewing audit events in a trail | `audit-trails.viewer` 
Creating a trail | `audit-trails.editor` 
Editing a trail | `audit-trails.editor` 
Deleting a trail | `audit-trails.editor` 
Managing roles of other users for a trail | `audit-trails.admin`


## What's next {#whats-next}

* Review the [audit log](../concepts/format.md) structure.
* Learn how to create a trail that [loads logs to the required destination](../operations/create-trail.md).