Policy types for @turbot/aws-cloudshell

AWS > CloudShell > API Enabled

Configure whether the AWS CloudShell API is enabled.

Note: Disabling the service disables the API for ALL users and roles, and Turbot will have no access to the API.

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellApiEnabled
Valid Value
[
"Enabled",
"Disabled",
"Enabled if AWS > CloudShell > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Disabled",
"Enabled if AWS > CloudShell > Enabled"
],
"default": "Enabled"
}

AWS > CloudShell > Approved Regions [Default]

A list of AWS regions in which AWS CloudShell resources are approved for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy is the default value for all AWS CloudShell resources' Approved > Regions policies.

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellApprovedRegionsDefault
Default Template Input
"{\n regions: policyValue(uri:\"tmod:@turbot/aws#/policy/types/approvedRegionsDefault\") {\n value\n }\n}\n"
Default Template
"{% if $.regions.value | length == 0 %} [] {% endif %}{% for item in $.regions.value %}- '{{ item }}'\n{% endfor %}"

AWS > CloudShell > Enabled

Configure whether the AWS CloudShell service is enabled. This will only affect Turbot managed User Roles and will allow the Turbot managed user to access AWS CloudShell service.

  • Enabled policy allows Turbot managed users to perform all the actions for the service
  • Enabled: Metadata Only policy allows Turbot managed users to perform only the metadata level actions for the service (like describe*, list*)

Note:

  • Disabled policy disables the service but does NOT disable the API for Turbot or SuperUsers
  • All the resource data stored in the Turbot CMDB is considered to be metadata
  • For more information related to permissions and grant levels, please check the documentation
URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellEnabled
Valid Value
[
"Enabled",
"Enabled: Metadata Only",
"Disabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Enabled: Metadata Only",
"Disabled"
],
"example": [
"Enabled"
],
"default": "Disabled"
}

AWS > CloudShell > Permissions

Configure whether permissions policies are in effect for AWS CloudShell.

This setting does not affect account level permissions (AWS/Admin, AWS/Owner, etc)

Note: The behavior of this policy depends on the value of AWS > Permissions.

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellPermissions
Valid Value
[
"Enabled",
"Disabled",
"Enabled if AWS > CloudShell > Enabled & AWS > CloudShell > API Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Disabled",
"Enabled if AWS > CloudShell > Enabled & AWS > CloudShell > API Enabled"
],
"example": [
"Enabled"
],
"default": "Enabled if AWS > CloudShell > Enabled & AWS > CloudShell > API Enabled"
}

AWS > CloudShell > Permissions > Levels

Define the permissions levels that can be used to grant access to an AWS account. Permissions levels defined will appear in the UI to assign access to Turbot users. This policy provides a default for Permissions > Levels in each service, however you can explicitly override the setting for each service if desired

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellPermissionsLevels
Default Template Input
[
"{\n item: account {\n turbot{\n id\n }\n }\n}\n",
"{\n availableLevels: policyValues(filter:\"policyTypeLevel:self resourceId:{{ $.item.turbot.id }} policyTypeId:'tmod:@turbot/aws-iam#/policy/types/permissionsLevelsDefault'\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"{% if $.availableLevels.items[0].value | length == 0 %} [] {% endif %}{% for item in $.availableLevels.items[0].value %}- {{ item }}\n{% endfor %}"
Schema
{
"type": "array",
"items": {
"type": "string",
"enum": [
"Metadata",
"ReadOnly",
"Operator",
"Admin",
"Owner"
]
}
}

AWS > CloudShell > Permissions > Levels > Modifiers

A map of AWS API to Turbot Permission Level used to customize Turbot's standard permissions. You can add, remove or redefine the mapping of AWS API operations to Turbot permissions levels here.

Note: Modifiers are cumulative - if you add a permission to the Metadata level, it is also added to ReadOnly, Operator and Admin. Modifier policies set here apply ONLY to the AWS level

example:
- "glacier:createvault": admin
- "glacier:ListVaults": metadata
- "s3:DeleteBucket": none
URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellPermissionsLevelsModifiers

AWS > CloudShell > Permissions > Lockdown

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellPermissionsLockdown
Targets

AWS > CloudShell > Permissions > Lockdown > API Boundary

Configure whether the AWS cloudShell API is enabled for all users and roles in turbot-managed boundary policies.

Note: Disabling the service disables the API for ALL users and roles, and Turbot will have no access to the API.

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellPermissionsLockdownApiBoundary
Valid Value
[
"Enabled if AWS > CloudShell > API Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled if AWS > CloudShell > API Enabled"
],
"example": [
"Enabled if AWS > CloudShell > API Enabled"
],
"default": "Enabled if AWS > CloudShell > API Enabled"
}

AWS > CloudShell > Regions

A list of AWS regions in which AWS CloudShell resources are supported for use.

The expected format is an array of regions names. You may use the '*' and '?' wildcard characters.

This policy is the default value for all AWS CloudShell resources' Regions policies.

URI
tmod:@turbot/aws-cloudshell#/policy/types/cloudShellRegionsDefault
Schema
{
"allOf": [
{
"$ref": "aws#/definitions/regionNameMatcherList"
},
{
"default": [
"ap-northeast-1",
"ap-south-1",
"ap-southeast-2",
"eu-central-1",
"eu-west-1",
"us-east-1",
"us-east-2",
"us-west-2"
]
}
]
}

AWS > Turbot > Permissions > Compiled > API Boundary > @turbot/aws-cloudshell

A read-only policy generated by Turbot that lists the APIs that should be added to the turbot-managed (hard) boundary policy, thereby enabling them to be assigned to users and roles. This value will change depending on the value of the value of the AWS > CloudShell > Permissions > Lockdown > API Boundary policy

URI
tmod:@turbot/aws-cloudshell#/policy/types/awsCompiledApiBoundary
Schema
{
"type": "array"
}

AWS > Turbot > Permissions > Compiled > Levels > @turbot/aws-cloudshell

A calculated policy that Turbot uses to create a compiled list of ALL permissions for AWS CloudShell that is used as input to the stack that manages the Turbot IAM permissions objects.

URI
tmod:@turbot/aws-cloudshell#/policy/types/awsLevelsCompiled

AWS > Turbot > Permissions > Compiled > Service Permissions > @turbot/aws-cloudshell

A calculated policy that Turbot uses to create a compiled list of ALL permissions for AWS CloudShell that is used as input to the control that manages the IAM stack.

URI
tmod:@turbot/aws-cloudshell#/policy/types/awsCompiledServicePermissions