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

# Access management in Serverless Containers

Serverless Containers uses [roles](../../iam/concepts/access-control/roles.md) to manage access permissions.

In this section, you will learn about:

* [Resources supporting role assignment](#resources).
* [Roles this service has](#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).

To assign a role for a resource, you need the `serverless-containers.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`

{% note info %}

The ability to invoke and managing containers from specific [cloud networks](../../vpc/concepts/network.md#network) or IP addresses or associate containers with specific cloud networks may be limited by [access policies](../../iam/concepts/access-control/access-policies.md) at the [folder](../../resource-manager/concepts/resources-hierarchy.md#folder), [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud), or [organization](../../organization/concepts/organization.md) level. 

{% endnote %}

## 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.

To assign a role for a [container](../concepts/container.md), use the Yandex Cloud [CLI](../../cli/cli-ref/serverless/cli-ref/container/add-access-binding.md), [API](../api-ref/containers/authentication.md), or [Terraform](../../terraform/resources/serverless_container_iam_binding.md).

## Roles this service has {#roles-list}

The list below shows all the roles used for access control in Serverless Containers.

```mermaid
flowchart BT
    serverless-containers.editor --> serverless-containers.admin
    serverless-containers.containerInvoker --> serverless-containers.editor
    serverless-containers.viewer --> serverless-containers.editor
    serverless-containers.auditor --> serverless-containers.viewer
```

### Service roles {#service-roles}

#### serverless-containers.auditor {#serverless-containers-auditor}

The `serverless-containers.auditor` role enables viewing info on [containers](../concepts/container.md), except for the info on the [revision](../concepts/container.md#revision) [environment variables](../concepts/runtime.md#environment-variables).

#### serverless-containers.viewer {#serverless-containers-viewer}

The `serverless-containers.viewer` role enables viewing info on containers, as well as on the relevant cloud and folder.

Users with this role can:
* View info on [containers](../concepts/container.md), including the [revision](../concepts/container.md#revision) [environment variables](../concepts/runtime.md#environment-variables).
* View info on granted [access permissions](../../iam/concepts/access-control/index.md) to containers.
* View info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud).
* View info on the relevant [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).

This role includes the `serverless-containers.auditor` permissions.

#### serverless-containers.editor {#serverless-containers-editor}

The `serverless-containers.editor` role enables managing containers and viewing info on them, as well as on the relevant cloud and folder.

Users with this role can:
* Create, invoke, modify, and delete [containers](../concepts/container.md).
* View info on containers, including the [revision](../concepts/container.md#revision) [environment variables](../concepts/runtime.md#environment-variables), as well as on the granted [access permissions](../../iam/concepts/access-control/index.md) to containers.
* View info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud).
* View info on the relevant [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).

This role includes the `serverless-containers.viewer` permissions.

#### serverless-containers.admin {#serverless-containers-admin}

The `serverless-containers.admin` role enables managing containers and access to them, as well as viewing info on containers and the relevant cloud and folder.

Users with this role can:
* Create, invoke, modify, and delete [containers](../concepts/container.md).
* View info on granted [access permissions](../../iam/concepts/access-control/index.md) to containers and modify such permissions.
* View info on containers, including the [revision](../concepts/container.md#revision) [environment variables](../concepts/runtime.md#environment-variables).
* View info on the relevant [cloud](../../resource-manager/concepts/resources-hierarchy.md#cloud).
* View info on the relevant [folder](../../resource-manager/concepts/resources-hierarchy.md#folder).

This role includes the `serverless-containers.editor` permissions.

#### serverless-containers.containerInvoker {#serverless-containers-containerinvoker}

The `serverless-containers.containerInvoker` role enables invoking [containers](../concepts/container.md).

### 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).