Amazon EC2 Container Service

2023/11/27 - Amazon EC2 Container Service - 4 updated api methods

Changes  Adds a new 'type' property to the Setting structure. Adds a new AccountSetting - guardDutyActivate for ECS.

DeleteAccountSetting (updated) Link ¶
Changes (request, response)
Request
{'name': {'guardDutyActivate'}}
Response
{'setting': {'name': {'guardDutyActivate'}, 'type': 'user | aws_managed'}}

Disables an account setting for a specified user, role, or the root user for an account.

See also: AWS API Documentation

Request Syntax

client.delete_account_setting(
    name='serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
    principalArn='string'
)
type name

string

param name

[REQUIRED]

The resource name to disable the account setting for. If serviceLongArnFormat is specified, the ARN for your Amazon ECS services is affected. If taskLongArnFormat is specified, the ARN and resource ID for your Amazon ECS tasks is affected. If containerInstanceLongArnFormat is specified, the ARN and resource ID for your Amazon ECS container instances is affected. If awsvpcTrunking is specified, the ENI limit for your Amazon ECS container instances is affected.

type principalArn

string

param principalArn

The Amazon Resource Name (ARN) of the principal. It can be an user, role, or the root user. If you specify the root user, it disables the account setting for all users, roles, and the root user of the account unless a user or role explicitly overrides these settings. If this field is omitted, the setting is changed only for the authenticated user.

rtype

dict

returns

Response Syntax

{
    'setting': {
        'name': 'serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
        'value': 'string',
        'principalArn': 'string',
        'type': 'user'|'aws_managed'
    }
}

Response Structure

  • (dict) --

    • setting (dict) --

      The account setting for the specified principal ARN.

      • name (string) --

        The Amazon ECS resource name.

      • value (string) --

        Determines whether the account setting is on or off for the specified resource.

      • principalArn (string) --

        The ARN of the principal. It can be a user, role, or the root user. If this field is omitted, the authenticated user is assumed.

      • type (string) --

        Indicates whether Amazon Web Services manages the account setting, or if the user manages it.

        aws_managed account settings are read-only, as Amazon Web Services manages such on the customer's behalf. Currently, the guardDutyActivate account setting is the only one Amazon Web Services manages.

ListAccountSettings (updated) Link ¶
Changes (request, response)
Request
{'name': {'guardDutyActivate'}}
Response
{'settings': {'name': {'guardDutyActivate'}, 'type': 'user | aws_managed'}}

Lists the account settings for a specified principal.

See also: AWS API Documentation

Request Syntax

client.list_account_settings(
    name='serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
    value='string',
    principalArn='string',
    effectiveSettings=True|False,
    nextToken='string',
    maxResults=123
)
type name

string

param name

The name of the account setting you want to list the settings for.

type value

string

param value

The value of the account settings to filter results with. You must also specify an account setting name to use this parameter.

type principalArn

string

param principalArn

The ARN of the principal, which can be a user, role, or the root user. If this field is omitted, the account settings are listed only for the authenticated user.

Note

Federated users assume the account setting of the root user and can't have explicit account settings set for them.

type effectiveSettings

boolean

param effectiveSettings

Determines whether to return the effective settings. If true , the account settings for the root user or the default setting for the principalArn are returned. If false , the account settings for the principalArn are returned if they're set. Otherwise, no account settings are returned.

type nextToken

string

param nextToken

The nextToken value returned from a ListAccountSettings request indicating that more results are available to fulfill the request and further calls will be needed. If maxResults was provided, it's possible the number of results to be fewer than maxResults .

Note

This token should be treated as an opaque identifier that is only used to retrieve the next items in a list and not for other programmatic purposes.

type maxResults

integer

param maxResults

The maximum number of account setting results returned by ListAccountSettings in paginated output. When this parameter is used, ListAccountSettings only returns maxResults results in a single page along with a nextToken response element. The remaining results of the initial request can be seen by sending another ListAccountSettings request with the returned nextToken value. This value can be between 1 and 10. If this parameter isn't used, then ListAccountSettings returns up to 10 results and a nextToken value if applicable.

rtype

dict

returns

Response Syntax

{
    'settings': [
        {
            'name': 'serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
            'value': 'string',
            'principalArn': 'string',
            'type': 'user'|'aws_managed'
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) --

    • settings (list) --

      The account settings for the resource.

      • (dict) --

        The current account setting for a resource.

        • name (string) --

          The Amazon ECS resource name.

        • value (string) --

          Determines whether the account setting is on or off for the specified resource.

        • principalArn (string) --

          The ARN of the principal. It can be a user, role, or the root user. If this field is omitted, the authenticated user is assumed.

        • type (string) --

          Indicates whether Amazon Web Services manages the account setting, or if the user manages it.

          aws_managed account settings are read-only, as Amazon Web Services manages such on the customer's behalf. Currently, the guardDutyActivate account setting is the only one Amazon Web Services manages.

    • nextToken (string) --

      The nextToken value to include in a future ListAccountSettings request. When the results of a ListAccountSettings request exceed maxResults , this value can be used to retrieve the next page of results. This value is null when there are no more results to return.

PutAccountSetting (updated) Link ¶
Changes (request, response)
Request
{'name': {'guardDutyActivate'}}
Response
{'setting': {'name': {'guardDutyActivate'}, 'type': 'user | aws_managed'}}

Modifies an account setting. Account settings are set on a per-Region basis.

If you change the root user account setting, the default settings are reset for users and roles that do not have specified individual account settings. For more information, see Account Settings in the Amazon Elastic Container Service Developer Guide .

When you specify serviceLongArnFormat , taskLongArnFormat , or containerInstanceLongArnFormat , the Amazon Resource Name (ARN) and resource ID format of the resource type for a specified user, role, or the root user for an account is affected. The opt-in and opt-out account setting must be set for each Amazon ECS resource separately. The ARN and resource ID format of a resource is defined by the opt-in status of the user or role that created the resource. You must turn on this setting to use Amazon ECS features such as resource tagging.

When you specify awsvpcTrunking , the elastic network interface (ENI) limit for any new container instances that support the feature is changed. If awsvpcTrunking is turned on, any new container instances that support the feature are launched have the increased ENI limits available to them. For more information, see Elastic Network Interface Trunking in the Amazon Elastic Container Service Developer Guide .

When you specify containerInsights , the default setting indicating whether Amazon Web Services CloudWatch Container Insights is turned on for your clusters is changed. If containerInsights is turned on, any new clusters that are created will have Container Insights turned on unless you disable it during cluster creation. For more information, see CloudWatch Container Insights in the Amazon Elastic Container Service Developer Guide .

Amazon ECS is introducing tagging authorization for resource creation. Users must have permissions for actions that create the resource, such as ecsCreateCluster . If tags are specified when you create a resource, Amazon Web Services performs additional authorization to verify if users or roles have permissions to create tags. Therefore, you must grant explicit permissions to use the ecs:TagResource action. For more information, see Grant permission to tag resources on creation in the Amazon ECS Developer Guide .

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to configure the wait time to retire a Fargate task. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide .

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring .

See also: AWS API Documentation

Request Syntax

client.put_account_setting(
    name='serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
    value='string',
    principalArn='string'
)
type name

string

param name

[REQUIRED]

The Amazon ECS resource name for which to modify the account setting. If you specify serviceLongArnFormat , the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat , the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat , the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking , the elastic network interface (ENI) limit for your Amazon ECS container instances is affected. If you specify containerInsights , the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify fargateFIPSMode , Fargate FIPS 140 compliance is affected. If you specify tagResourceAuthorization , the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide . If you specify fargateTaskRetirementWaitPeriod , the wait time to retire a Fargate task is affected.

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring .

type value

string

param value

[REQUIRED]

The account setting value for the specified principal ARN. Accepted values are enabled , disabled , on , and off .

When you specify fargateTaskRetirementWaitPeriod for the name , the following are the valid values:

  • 0 - Amazon Web Services sends the notification, and immediately retires the affected tasks.

  • 7 - Amazon Web Services sends the notification, and waits 7 calendar days to retire the tasks.

  • 14 - Amazon Web Services sends the notification, and waits 14 calendar days to retire the tasks.

type principalArn

string

param principalArn

The ARN of the principal, which can be a user, role, or the root user. If you specify the root user, it modifies the account setting for all users, roles, and the root user of the account unless a user or role explicitly overrides these settings. If this field is omitted, the setting is changed only for the authenticated user.

Note

You must use the root user when you set the Fargate wait time (fargateTaskRetirementWaitPeriod ).

Federated users assume the account setting of the root user and can't have explicit account settings set for them.

rtype

dict

returns

Response Syntax

{
    'setting': {
        'name': 'serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
        'value': 'string',
        'principalArn': 'string',
        'type': 'user'|'aws_managed'
    }
}

Response Structure

  • (dict) --

    • setting (dict) --

      The current account setting for a resource.

      • name (string) --

        The Amazon ECS resource name.

      • value (string) --

        Determines whether the account setting is on or off for the specified resource.

      • principalArn (string) --

        The ARN of the principal. It can be a user, role, or the root user. If this field is omitted, the authenticated user is assumed.

      • type (string) --

        Indicates whether Amazon Web Services manages the account setting, or if the user manages it.

        aws_managed account settings are read-only, as Amazon Web Services manages such on the customer's behalf. Currently, the guardDutyActivate account setting is the only one Amazon Web Services manages.

PutAccountSettingDefault (updated) Link ¶
Changes (request, response)
Request
{'name': {'guardDutyActivate'}}
Response
{'setting': {'name': {'guardDutyActivate'}, 'type': 'user | aws_managed'}}

Modifies an account setting for all users on an account for whom no individual account setting has been specified. Account settings are set on a per-Region basis.

See also: AWS API Documentation

Request Syntax

client.put_account_setting_default(
    name='serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
    value='string'
)
type name

string

param name

[REQUIRED]

The resource name for which to modify the account setting. If you specify serviceLongArnFormat , the ARN for your Amazon ECS services is affected. If you specify taskLongArnFormat , the ARN and resource ID for your Amazon ECS tasks is affected. If you specify containerInstanceLongArnFormat , the ARN and resource ID for your Amazon ECS container instances is affected. If you specify awsvpcTrunking , the ENI limit for your Amazon ECS container instances is affected. If you specify containerInsights , the default setting for Amazon Web Services CloudWatch Container Insights for your clusters is affected. If you specify tagResourceAuthorization , the opt-in option for tagging resources on creation is affected. For information about the opt-in timeline, see Tagging authorization timeline in the Amazon ECS Developer Guide . If you specify fargateTaskRetirementWaitPeriod , the default wait time to retire a Fargate task due to required maintenance is affected.

When you specify fargateFIPSMode for the name and enabled for the value , Fargate uses FIPS-140 compliant cryptographic algorithms on your tasks. For more information about FIPS-140 compliance with Fargate, see Amazon Web Services Fargate Federal Information Processing Standard (FIPS) 140-2 compliance in the Amazon Elastic Container Service Developer Guide .

When Amazon Web Services determines that a security or infrastructure update is needed for an Amazon ECS task hosted on Fargate, the tasks need to be stopped and new tasks launched to replace them. Use fargateTaskRetirementWaitPeriod to set the wait time to retire a Fargate task to the default. For information about the Fargate tasks maintenance, see Amazon Web Services Fargate task maintenance in the Amazon ECS Developer Guide .

The guardDutyActivate parameter is read-only in Amazon ECS and indicates whether Amazon ECS Runtime Monitoring is enabled or disabled by your security administrator in your Amazon ECS account. Amazon GuardDuty controls this account setting on your behalf. For more information, see Protecting Amazon ECS workloads with Amazon ECS Runtime Monitoring .

type value

string

param value

[REQUIRED]

The account setting value for the specified principal ARN. Accepted values are enabled , disabled , on , and off .

When you specify fargateTaskRetirementWaitPeriod for the name , the following are the valid values:

  • 0 - Amazon Web Services sends the notification, and immediately retires the affected tasks.

  • 7 - Amazon Web Services sends the notification, and waits 7 calendar days to retire the tasks.

  • 14 - Amazon Web Services sends the notification, and waits 14 calendar days to retire the tasks.

rtype

dict

returns

Response Syntax

{
    'setting': {
        'name': 'serviceLongArnFormat'|'taskLongArnFormat'|'containerInstanceLongArnFormat'|'awsvpcTrunking'|'containerInsights'|'fargateFIPSMode'|'tagResourceAuthorization'|'fargateTaskRetirementWaitPeriod'|'guardDutyActivate',
        'value': 'string',
        'principalArn': 'string',
        'type': 'user'|'aws_managed'
    }
}

Response Structure

  • (dict) --

    • setting (dict) --

      The current setting for a resource.

      • name (string) --

        The Amazon ECS resource name.

      • value (string) --

        Determines whether the account setting is on or off for the specified resource.

      • principalArn (string) --

        The ARN of the principal. It can be a user, role, or the root user. If this field is omitted, the authenticated user is assumed.

      • type (string) --

        Indicates whether Amazon Web Services manages the account setting, or if the user manages it.

        aws_managed account settings are read-only, as Amazon Web Services manages such on the customer's behalf. Currently, the guardDutyActivate account setting is the only one Amazon Web Services manages.