Assigning roles for a workflow
If you do not have the Yandex Cloud CLI yet, install and initialize it.
The folder used by default is the one specified when creating the CLI profile. To change the default folder, use the yc config set folder-id <folder_ID> command. You can also specify a different folder for any command using --folder-name or --folder-id. If you access a resource by its name, the search will be limited to the default folder. If you access a resource by its ID, the search will be global, i.e., through all folders based on access permissions.
Run the following command to assign a role for a workflow:
-
To a user:
yc serverless workflow add-access-binding <workflow_name_or_ID> \ --user-account-id <user_ID> \ --role <role> -
To a service account:
yc serverless workflow add-access-binding <workflow_name_or_ID> \ --service-account-id <service_account_ID> \ --role <role> -
To all authenticated users (the
All authenticated userspublic group):yc serverless workflow add-access-binding <workflow_name_or_ID> \ --all-authenticated-users \ --role <role>
Example
Assigning a role for a workflow to a service account:
yc serverless workflow add-access-binding epdplu8jn7sr******** \
--service-account-id rrbilgiqaptv******** \
--role serverless.workflows.auditor
Result:
...1s...done (3s)
Use the setAccessBinding REST API method for the Workflow resource or the WorkflowService/SetAccessBinding gRPC API call.