Yandex Cloud
Search
Contact UsTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex Cloud Stackland
  • What's new
  • Installation
    • All tutorials
    • Installing Stackland on Yandex BareMetal
    • Setting up external access to a pod in a cluster
    • All guides
      • Creating a user
      • Creating a user group
      • Connecting a SAML federation
      • Assigning access permissions
    • Projects
    • Resource model
  • Access management
  • Pricing policy
  • Diagnostics and troubleshooting

In this article:

  • Assigning a cluster-level role
  • Assigning a role to a user
  • Assigning a role to a group
  • Assigning a project-level role
  • Assigning a project-level role to a user
  • Assigning a project-level role to a service account
  • Available roles
  • Revoking a role
  • What's next
  1. Step-by-step guides
  2. Users and groups
  3. Assigning access permissions

Assigning access permissions

Written by
Yandex Cloud
Updated at April 8, 2026
  • Assigning a cluster-level role
    • Assigning a role to a user
    • Assigning a role to a group
  • Assigning a project-level role
    • Assigning a project-level role to a user
    • Assigning a project-level role to a service account
  • Available roles
  • Revoking a role
  • What's next

You can assign roles to users, groups, and service accounts. Access permissions can be assigned at two levels:

  • At the cluster level, using the ClusterAccessBinding resource. Such a role applies to the entire organization.
  • At the project level, using the AccessBinding resource. Such a role applies to a specific namespace.

Note

To assign cluster-level permissions, you need the organization admin privileges.

Assigning a cluster-level roleAssigning a cluster-level role

Use the ClusterAccessBinding resource to assign roles at the organization level.

Assigning a role to a userAssigning a role to a user

Management console
CLI
  1. In the management console, navigate to Access management.
  2. On the Access permissions page, click Assign role.
  3. In the Subject field, select User.
  4. Select a user from the list.
  5. In the Role field, select a role.
  6. Click Save.
  1. Create a file named user-role-binding.yaml:

    apiVersion: iam.stackland.yandex.cloud/v1alpha1
    kind: ClusterAccessBinding
    metadata:
      name: user-admin-role
    spec:
      roleID: admin
      subject:
        kind: User
        name: username
    

    Where:

    • metadata.name: Unique role binding name.
    • roleID: Role ID, such as admin, editor, or viewer.
    • kind: Subject type. To set a user, specify User.
    • name: Name of the user (username for local users and name_id for SAML federation users).
  2. Apply the configuration:

    kubectl apply -f user-role-binding.yaml
    
  3. Check the binding you created:

    kubectl get clusteraccessbinding user-admin-role
    

Assigning a role to a groupAssigning a role to a group

Management console
CLI
  1. In the management console, navigate to Access management.
  2. On the Access permissions page, click Assign role.
  3. In the Subject field, select Group.
  4. Select a group from the list.
  5. In the Role field, select a role.
  6. Click Save.
  1. Create a file named group-role-binding.yaml:

    apiVersion: iam.stackland.yandex.cloud/v1alpha1
    kind: ClusterAccessBinding
    metadata:
      name: stackland-cluster-admins
    spec:
      roleID: admin
      subject:
        kind: Group
        name: stackland-cluster-admins
    

    Where:

    • metadata.name: Unique role binding name.
    • roleID: Role ID.
    • kind: Subject type. To set a group, specify Group.
    • name: Group name.
  2. Apply the configuration:

    kubectl apply -f group-role-binding.yaml
    
  3. Check the binding you created:

    kubectl get clusteraccessbinding stackland-cluster-admins
    

Assigning a project-level roleAssigning a project-level role

Use the AccessBinding resource to assign roles within a specific namespace.

Assigning a project-level role to a userAssigning a project-level role to a user

CLI
  1. Create a file named user-project-role-binding.yaml:

    apiVersion: iam.stackland.yandex.cloud/v1alpha1
    kind: AccessBinding
    metadata:
      name: bob-is-storage-admin
      namespace: warehouse
    spec:
      roleID: storage.admin
      subject:
        kind: User
        name: bob@stackland
    

    Where:

    • metadata.name: Unique role binding name.
    • metadata.namespace: Namespace to assign the role in.
    • roleID: Role ID.
    • kind: Subject type. To set a user, specify User.
    • name: Username.
  2. Apply the configuration:

    kubectl apply -f user-project-role-binding.yaml
    
  3. Check the binding you created:

    kubectl get accessbinding bob-is-storage-admin -n warehouse
    

Assigning a project-level role to a service accountAssigning a project-level role to a service account

CLI
  1. Create a file named sa-role-binding.yaml:

    apiVersion: iam.stackland.yandex.cloud/v1alpha1
    kind: AccessBinding
    metadata:
      namespace: warehouse
      name: app-sa-is-storage-viewer
    spec:
      roleID: storage.viewer
      subject:
        kind: ServiceAccount
        name: app-sa
        namespace: warehouse
    

    Where:

    • metadata.name: Unique role binding name.
    • metadata.namespace: Namespace to assign the role in.
    • roleID: Role ID.
    • kind: Subject type. To set a service account, specify ServiceAccount.
    • name: Service account name.
    • namespace: Namespace of the service account.
  2. Apply the configuration:

    kubectl apply -f sa-role-binding.yaml
    
  3. Check the binding you created:

    kubectl get accessbinding app-sa-is-storage-viewer -n warehouse
    

Available rolesAvailable roles

The basic roles in the system include:

  • admin: Full access to all resources in the organization.
  • editor: Permissions to create and modify resources.
  • viewer: View-only permissions for resources.

To view all available roles, refer to Access management.

Revoking a roleRevoking a role

Management console
CLI
  1. In the management console, navigate to Access management.
  2. On the Access permissions page, find the role binding in question.
  3. Click and select Delete.
  4. Confirm the deletion.

To revoke a cluster-level role, delete the ClusterAccessBinding resource:

kubectl delete clusteraccessbinding <binding_name>

To revoke a project-level role, delete the AccessBinding resource:

kubectl delete accessbinding <binding_name> -n <namespace>

What's nextWhat's next

  • Creating a user
  • Creating a user group
  • Connecting a SAML federation

Was the article helpful?

Previous
Connecting a SAML federation
Next
Creating a cluster PostgreSQL
© 2026 Direct Cursus Technology L.L.C.