SageMaker / Client / update_workforce

update_workforce#

SageMaker.Client.update_workforce(**kwargs)#

Use this operation to update your workforce. You can use this operation to require that workers use specific IP addresses to work on tasks and to update your OpenID Connect (OIDC) Identity Provider (IdP) workforce configuration.

The worker portal is now supported in VPC and public internet.

Use SourceIpConfig to restrict worker access to tasks to a specific range of IP addresses. You specify allowed IP addresses by creating a list of up to ten CIDRs. By default, a workforce isn’t restricted to specific IP addresses. If you specify a range of IP addresses, workers who attempt to access tasks using any IP address outside the specified range are denied and get a Not Found error message on the worker portal.

To restrict access to all the workers in public internet, add the SourceIpConfig CIDR value as “10.0.0.0/16”.

Warning

Amazon SageMaker does not support Source Ip restriction for worker portals in VPC.

Use OidcConfig to update the configuration of a workforce created using your own OIDC IdP.

Warning

You can only update your OIDC IdP configuration when there are no work teams associated with your workforce. You can delete work teams using the DeleteWorkteam operation.

After restricting access to a range of IP addresses or updating your OIDC IdP configuration with this operation, you can view details about your update workforce using the DescribeWorkforce operation.

Warning

This operation only applies to private workforces.

See also: AWS API Documentation

Request Syntax

response = client.update_workforce(
    WorkforceName='string',
    SourceIpConfig={
        'Cidrs': [
            'string',
        ]
    },
    OidcConfig={
        'ClientId': 'string',
        'ClientSecret': 'string',
        'Issuer': 'string',
        'AuthorizationEndpoint': 'string',
        'TokenEndpoint': 'string',
        'UserInfoEndpoint': 'string',
        'LogoutEndpoint': 'string',
        'JwksUri': 'string'
    },
    WorkforceVpcConfig={
        'VpcId': 'string',
        'SecurityGroupIds': [
            'string',
        ],
        'Subnets': [
            'string',
        ]
    }
)
Parameters:
  • WorkforceName (string) –

    [REQUIRED]

    The name of the private workforce that you want to update. You can find your workforce name by using the ListWorkforces operation.

  • SourceIpConfig (dict) –

    A list of one to ten worker IP address ranges ( CIDRs) that can be used to access tasks assigned to this workforce.

    Maximum: Ten CIDR values

    • Cidrs (list) – [REQUIRED]

      A list of one to ten Classless Inter-Domain Routing (CIDR) values.

      Maximum: Ten CIDR values

      Note

      The following Length Constraints apply to individual CIDR values in the CIDR value list.

      • (string) –

  • OidcConfig (dict) –

    Use this parameter to update your OIDC Identity Provider (IdP) configuration for a workforce made using your own IdP.

    • ClientId (string) – [REQUIRED]

      The OIDC IdP client ID used to configure your private workforce.

    • ClientSecret (string) – [REQUIRED]

      The OIDC IdP client secret used to configure your private workforce.

    • Issuer (string) – [REQUIRED]

      The OIDC IdP issuer used to configure your private workforce.

    • AuthorizationEndpoint (string) – [REQUIRED]

      The OIDC IdP authorization endpoint used to configure your private workforce.

    • TokenEndpoint (string) – [REQUIRED]

      The OIDC IdP token endpoint used to configure your private workforce.

    • UserInfoEndpoint (string) – [REQUIRED]

      The OIDC IdP user information endpoint used to configure your private workforce.

    • LogoutEndpoint (string) – [REQUIRED]

      The OIDC IdP logout endpoint used to configure your private workforce.

    • JwksUri (string) – [REQUIRED]

      The OIDC IdP JSON Web Key Set (Jwks) URI used to configure your private workforce.

  • WorkforceVpcConfig (dict) –

    Use this parameter to update your VPC configuration for a workforce.

    • VpcId (string) –

      The ID of the VPC that the workforce uses for communication.

    • SecurityGroupIds (list) –

      The VPC security group IDs, in the form sg-xxxxxxxx. The security groups must be for the same VPC as specified in the subnet.

      • (string) –

    • Subnets (list) –

      The ID of the subnets in the VPC that you want to connect.

      • (string) –

Return type:

dict

Returns:

Response Syntax

{
    'Workforce': {
        'WorkforceName': 'string',
        'WorkforceArn': 'string',
        'LastUpdatedDate': datetime(2015, 1, 1),
        'SourceIpConfig': {
            'Cidrs': [
                'string',
            ]
        },
        'SubDomain': 'string',
        'CognitoConfig': {
            'UserPool': 'string',
            'ClientId': 'string'
        },
        'OidcConfig': {
            'ClientId': 'string',
            'Issuer': 'string',
            'AuthorizationEndpoint': 'string',
            'TokenEndpoint': 'string',
            'UserInfoEndpoint': 'string',
            'LogoutEndpoint': 'string',
            'JwksUri': 'string'
        },
        'CreateDate': datetime(2015, 1, 1),
        'WorkforceVpcConfig': {
            'VpcId': 'string',
            'SecurityGroupIds': [
                'string',
            ],
            'Subnets': [
                'string',
            ],
            'VpcEndpointId': 'string'
        },
        'Status': 'Initializing'|'Updating'|'Deleting'|'Failed'|'Active',
        'FailureReason': 'string'
    }
}

Response Structure

  • (dict) –

    • Workforce (dict) –

      A single private workforce. You can create one private work force in each Amazon Web Services Region. By default, any workforce-related API operation used in a specific region will apply to the workforce created in that region. To learn how to create a private workforce, see Create a Private Workforce.

      • WorkforceName (string) –

        The name of the private workforce.

      • WorkforceArn (string) –

        The Amazon Resource Name (ARN) of the private workforce.

      • LastUpdatedDate (datetime) –

        The most recent date that UpdateWorkforce was used to successfully add one or more IP address ranges ( CIDRs) to a private workforce’s allow list.

      • SourceIpConfig (dict) –

        A list of one to ten IP address ranges ( CIDRs) to be added to the workforce allow list. By default, a workforce isn’t restricted to specific IP addresses.

        • Cidrs (list) –

          A list of one to ten Classless Inter-Domain Routing (CIDR) values.

          Maximum: Ten CIDR values

          Note

          The following Length Constraints apply to individual CIDR values in the CIDR value list.

          • (string) –

      • SubDomain (string) –

        The subdomain for your OIDC Identity Provider.

      • CognitoConfig (dict) –

        The configuration of an Amazon Cognito workforce. A single Cognito workforce is created using and corresponds to a single Amazon Cognito user pool.

        • UserPool (string) –

          A user pool is a user directory in Amazon Cognito. With a user pool, your users can sign in to your web or mobile app through Amazon Cognito. Your users can also sign in through social identity providers like Google, Facebook, Amazon, or Apple, and through SAML identity providers.

        • ClientId (string) –

          The client ID for your Amazon Cognito user pool.

      • OidcConfig (dict) –

        The configuration of an OIDC Identity Provider (IdP) private workforce.

        • ClientId (string) –

          The OIDC IdP client ID used to configure your private workforce.

        • Issuer (string) –

          The OIDC IdP issuer used to configure your private workforce.

        • AuthorizationEndpoint (string) –

          The OIDC IdP authorization endpoint used to configure your private workforce.

        • TokenEndpoint (string) –

          The OIDC IdP token endpoint used to configure your private workforce.

        • UserInfoEndpoint (string) –

          The OIDC IdP user information endpoint used to configure your private workforce.

        • LogoutEndpoint (string) –

          The OIDC IdP logout endpoint used to configure your private workforce.

        • JwksUri (string) –

          The OIDC IdP JSON Web Key Set (Jwks) URI used to configure your private workforce.

      • CreateDate (datetime) –

        The date that the workforce is created.

      • WorkforceVpcConfig (dict) –

        The configuration of a VPC workforce.

        • VpcId (string) –

          The ID of the VPC that the workforce uses for communication.

        • SecurityGroupIds (list) –

          The VPC security group IDs, in the form sg-xxxxxxxx. The security groups must be for the same VPC as specified in the subnet.

          • (string) –

        • Subnets (list) –

          The ID of the subnets in the VPC that you want to connect.

          • (string) –

        • VpcEndpointId (string) –

          The IDs for the VPC service endpoints of your VPC workforce when it is created and updated.

      • Status (string) –

        The status of your workforce.

      • FailureReason (string) –

        The reason your workforce failed.

Exceptions

  • SageMaker.Client.exceptions.ConflictException