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

# Access management in Yandex Cloud Desktop

Cloud Desktop leverages Yandex Identity and Access Management roles and [access control lists (ACLs)](../concepts/acl.md) to manage access. [This example](../concepts/acl.md#example) shows how access management works in Cloud Desktop.

In this section, you will learn:
* [What resources you can assign a role for](#resources).
* [Roles existing in this 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).

## 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 [desktop group](../concepts/desktops-and-groups.md) via the [management console](https://console.yandex.cloud), Yandex Cloud [CLI](../../cli/cli-ref/desktops/cli-ref/group/add-access-bindings.md), or [API](../api-ref/authentication.md).

## Roles existing in this service {#roles-list}

```mermaid
flowchart BT
    vdi.desktopGroups.maintainer --> vdi.admin
    vdi.editor --> vdi.admin
    vdi.viewer --> vdi.editor
    vdi.desktopGroups.user --> vdi.editor
    vdi.desktopGroups.user --> vdi.desktopGroups.maintainer
    vdi.auditor --> vdi.viewer
```

### Service roles {#service-roles}

#### vdi.viewer {#vdi-viewer}

The `vdi.viewer` role enables viewing info on desktops and desktop groups.

Users with this role can:
* View info on desktop groups and [access permissions](../../iam/concepts/access-control/index.md) granted for them.
* View info on [desktops](../concepts/desktops-and-groups.md).
* View info on the Cloud Desktop [quotas](../concepts/limits.md#quotas).

This role includes the `vdi.auditor` permissions.

#### vdi.desktopGroups.maintainer {#vdi-desktopGroups-maintainer}

The `vdi.desktopGroups.maintainer` role enables using any desktops in a desktop group.

Users with this role can:
* Assign themselves one [desktop](../concepts/desktops-and-groups.md) in each desktop group.
* Connect to their desktops.
* Start, restart, and stop any desktops in a group.
* Reset the password on any desktop in a group.

This role includes the `vdi.desktopGroups.user` permissions.

#### vdi.desktopGroups.user {#vdi-desktopGroups-user}

The `vdi.desktopGroups.user` role enables using your desktops.

Users with this role can:
* Assign themselves one [desktop](../concepts/desktops-and-groups.md) in each desktop group.
* Connect to their desktops.
* Start, restart, and stop any desktops in a group.
* Reset the password on any desktop in a group.

#### vdi.editor {#vdi-editor}

The `vdi.editor` role allows managing desktop groups and desktops as well as using your desktops.

Users with this role can:
* View info on [desktop groups](../concepts/desktops-and-groups.md), as well as create, update, and delete them. A user with this role can only add themselves as a user to a desktop group or keep this field empty.
* View info on [access permissions](../../iam/concepts/access-control/index.md) granted for desktop groups.
* View info on [desktop groups](../concepts/desktops-and-groups.md), as well as create, update, and delete them.
* Assign themselves any number of desktops in a group.
* Connect to their desktops.
* Start, restart, and stop any desktops in a group.
* Reset the password on any desktop in a group.
* View info on the Cloud Desktop [quotas](../concepts/limits.md#quotas).

This role includes the `vdi.viewer` and `vdi.desktopGroups.user` permissions.

#### vdi.admin {#vdi-admin}

The `vdi.admin` role allows managing desktop groups and access to them, as well as managing and using desktops.

Users with this role can:
* View info on [desktop groups](../concepts/desktops-and-groups.md), as well as create, update, and delete them.
* View info on and update [access permissions](../../iam/concepts/access-control/index.md) granted for desktop groups.
* View info on [desktop groups](../concepts/desktops-and-groups.md), as well as create, update, and delete them.
* Assign themselves or any other user any number of desktops in a desktop group.
* Connect to their desktops.
* Start, restart, and stop any desktops in a group.
* Reset the password on any desktop in a group.
* View info on the Cloud Desktop [quotas](../concepts/limits.md#quotas).
* View info on the relevant [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).

This role includes the `vdi.editor` and `vdi.desktopGroups.maintainer` permissions.

For more information about service roles, see [Roles](../../iam/concepts/access-control/roles.md) in the Yandex Identity and Access Management documentation.

### 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's next {#what-is-next}

* [How to assign a role](../../iam/operations/roles/grant.md).
* [How to revoke a role](../../iam/operations/roles/revoke.md).
* [Learn more about access management in Yandex Cloud](../../iam/concepts/access-control/index.md).
* [Learn more about role inheritance](../../resource-manager/concepts/resources-hierarchy.md#access-rights-inheritance).