Policy types for @turbot/aws-serverlessapplicationrepository

AWS > Serverless Application Repository > API Enabled

Configure whether the AWS Serverless Application Repository 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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryApiEnabled
Valid Value
[
"Enabled",
"Disabled",
"Enabled if AWS > Serverless Application Repository > Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Disabled",
"Enabled if AWS > Serverless Application Repository > Enabled"
],
"default": "Enabled"
}

AWS > Serverless Application Repository > Approved Regions [Default]

A list of AWS regions in which AWS Serverless Application Repository 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 Serverless Application Repository resources' Approved > Regions policies.

URI
tmod:@turbot/aws-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryApprovedRegionsDefault
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 > Serverless Application Repository > Enabled

Configure whether the AWS Serverless Application Repository service is enabled. This will only affect Turbot managed User Roles and will allow the Turbot managed user to access AWS Serverless Application Repository 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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryEnabled
Valid Value
[
"Enabled",
"Enabled: Metadata Only",
"Disabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Enabled: Metadata Only",
"Disabled"
],
"example": [
"Enabled"
],
"default": "Disabled"
}

AWS > Serverless Application Repository > Permissions

Configure whether permissions policies are in effect for AWS Serverless Application Repository.

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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryPermissions
Valid Value
[
"Enabled",
"Disabled",
"Enabled if AWS > Serverless Application Repository > Enabled & AWS > Serverless Application Repository > API Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled",
"Disabled",
"Enabled if AWS > Serverless Application Repository > Enabled & AWS > Serverless Application Repository > API Enabled"
],
"example": [
"Enabled"
],
"default": "Enabled if AWS > Serverless Application Repository > Enabled & AWS > Serverless Application Repository > API Enabled"
}

AWS > Serverless Application Repository > 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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryPermissionsLevels
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 > Serverless Application Repository > 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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryPermissionsLevelsModifiers

AWS > Serverless Application Repository > Permissions > Lockdown

URI
tmod:@turbot/aws-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryPermissionsLockdown
Targets

AWS > Serverless Application Repository > Permissions > Lockdown > API Boundary

Configure whether the AWS serverlessApplicationRepository 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-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryPermissionsLockdownApiBoundary
Valid Value
[
"Enabled if AWS > Serverless Application Repository > API Enabled"
]
Schema
{
"type": "string",
"enum": [
"Enabled if AWS > Serverless Application Repository > API Enabled"
],
"example": [
"Enabled if AWS > Serverless Application Repository > API Enabled"
],
"default": "Enabled if AWS > Serverless Application Repository > API Enabled"
}

AWS > Serverless Application Repository > Regions

A list of AWS regions in which AWS Serverless Application Repository 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 Serverless Application Repository resources' Regions policies.

URI
tmod:@turbot/aws-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryRegionsDefault
Schema
{
"allOf": [
{
"$ref": "aws#/definitions/regionNameMatcherList"
},
{
"default": [
"ap-east-1",
"ap-northeast-1",
"ap-northeast-2",
"ap-south-1",
"ap-southeast-1",
"ap-southeast-2",
"ca-central-1",
"cn-north-1",
"cn-northwest-1",
"eu-central-1",
"eu-north-1",
"eu-west-1",
"eu-west-2",
"eu-west-3",
"me-south-1",
"sa-east-1",
"us-east-1",
"us-east-2",
"us-gov-east-1",
"us-gov-west-1",
"us-west-1",
"us-west-2"
]
}
]
}

AWS > Serverless Application Repository > Tags Template [Default]

A template used to generate the keys and values for AWS Serverless Application Repository resources.

By default, all Serverless Application Repository resource Tags > Template policies will use this value.

URI
tmod:@turbot/aws-serverlessapplicationrepository#/policy/types/serverlessApplicationRepositoryTagsTemplate
Default Template Input
"{\n defaultTags: policyValue(uri:\"tmod:@turbot/aws#/policy/types/defaultTagsTemplate\") {\n value\n }\n}\n"
Default Template
"{%- if $.defaultTags.value | length == 0 %} [] {%- elif $.defaultTags.value != undefined %}{{ $.defaultTags.value | dump | safe }}{%- else %}{% for item in $.defaultTags.value %}- {{ item }}{% endfor %}{% endif %}"

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

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 > Serverless Application Repository > Permissions > Lockdown > API Boundary policy

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

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

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

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

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

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

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