Updated on 2024-11-04 GMT+08:00

Creating a Custom SFS Turbo Policy

You can create custom policies to supplement the system-defined policies of SFS Turbo. For the actions supported for custom policies, see Permissions Policies and Supported Actions.

You can create custom policies in either of the following two ways:

  • Visual editor: Select cloud services, actions, resources, and request conditions. This does not require knowledge of policy syntax.
  • JSON: Edit JSON policies from scratch or based on an existing policy.

For details, see Creating a Custom Policy. This section provides examples of common custom SFS Turbo policies.

Example Custom Policies

  • Example 1: Grant permission to create file systems.
    {
            "Version": "1.1",
            "Statement": [
                    {
                            "Action": [
                                    "sfsturbo:shares:createShare"
                            ],
                            "Effect": "Allow"
                    }
            ]
    }
  • Example 2: Grant permission to deny file system deletion.

    A policy with only "Deny" permissions must be used together with other policies. If the permissions granted to an IAM user contain both "Allow" and "Deny", the "Deny" permissions take precedence over the "Allow" permissions.

    Assume that you want to grant the permissions of the SFS Turbo FullAccess policy to a user but want to prevent them from deleting file systems. You can create a custom policy for denying file system deletion, and attach this policy together with the SFS Turbo FullAccess policy to the user. As an explicit deny in any policy overrides any allows, the user can perform all operations on file systems excepting deleting them. Example policy denying file system deletion:

    {
            "Version": "1.1",
            "Statement": [
                    {
                            "Effect": "Deny",
                            "Action": [
                                    "sfsturbo:shares:deleteShare"
                            ]
                    }
            ]
    }
  • Example 3: Create a custom policy containing multiple actions.

    A custom policy can contain actions of multiple services that are all of the global or project-level type. Example policy containing actions of multiple services:

    {
        "Version": "1.1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "sfsturbo:shares:createShare",
                    "sfsturbo:shares:deleteShare"
                ]
            },
            {
                "Effect": "Allow",
                "Action": [
                    "ecs:servers:delete"
                ]
            }
        ]
    }