ManagedGrafana / Client / update_workspace

update_workspace#

ManagedGrafana.Client.update_workspace(**kwargs)#

Modifies an existing Amazon Managed Grafana workspace. If you use this operation and omit any optional parameters, the existing values of those parameters are not changed.

To modify the user authentication methods that the workspace uses, such as SAML or IAM Identity Center, use UpdateWorkspaceAuthentication.

To modify which users in the workspace have the Admin and Editor Grafana roles, use UpdatePermissions.

See also: AWS API Documentation

Request Syntax

response = client.update_workspace(
    accountAccessType='CURRENT_ACCOUNT'|'ORGANIZATION',
    networkAccessControl={
        'prefixListIds': [
            'string',
        ],
        'vpceIds': [
            'string',
        ]
    },
    organizationRoleName='string',
    permissionType='CUSTOMER_MANAGED'|'SERVICE_MANAGED',
    removeNetworkAccessConfiguration=True|False,
    removeVpcConfiguration=True|False,
    stackSetName='string',
    vpcConfiguration={
        'securityGroupIds': [
            'string',
        ],
        'subnetIds': [
            'string',
        ]
    },
    workspaceDataSources=[
        'AMAZON_OPENSEARCH_SERVICE'|'CLOUDWATCH'|'PROMETHEUS'|'XRAY'|'TIMESTREAM'|'SITEWISE'|'ATHENA'|'REDSHIFT'|'TWINMAKER',
    ],
    workspaceDescription='string',
    workspaceId='string',
    workspaceName='string',
    workspaceNotificationDestinations=[
        'SNS',
    ],
    workspaceOrganizationalUnits=[
        'string',
    ],
    workspaceRoleArn='string'
)
Parameters:
  • accountAccessType (string) – Specifies whether the workspace can access Amazon Web Services resources in this Amazon Web Services account only, or whether it can also access Amazon Web Services resources in other accounts in the same organization. If you specify ORGANIZATION, you must specify which organizational units the workspace can access in the workspaceOrganizationalUnits parameter.

  • networkAccessControl (dict) –

    The configuration settings for network access to your workspace.

    When this is configured, only listed IP addresses and VPC endpoints will be able to access your workspace. Standard Grafana authentication and authorization will still be required.

    If this is not configured, or is removed, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

    • prefixListIds (list) – [REQUIRED]

      An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.

      Prefix list IDs have the format ``pl-1a2b3c4d ``.

      For more information about prefix lists, see `Group CIDR blocks using managed prefix lists <https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html>`__in the Amazon Virtual Private Cloud User Guide.

      • (string) –

    • vpceIds (list) – [REQUIRED]

      An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.

      VPC endpoint IDs have the format ``vpce-1a2b3c4d ``.

      For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.

      Note

      The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.

      • (string) –

  • organizationRoleName (string) – The name of an IAM role that already exists to use to access resources through Organizations. This can only be used with a workspace that has the permissionType set to CUSTOMER_MANAGED.

  • permissionType (string) –

    Use this parameter if you want to change a workspace from SERVICE_MANAGED to CUSTOMER_MANAGED. This allows you to manage the permissions that the workspace uses to access datasources and notification channels. If the workspace is in a member Amazon Web Services account of an organization, and that account is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, you must choose CUSTOMER_MANAGED.

    If you specify this as CUSTOMER_MANAGED, you must also specify a workspaceRoleArn that the workspace will use for accessing Amazon Web Services resources.

    For more information on the role and permissions needed, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels

    Note

    Do not use this to convert a CUSTOMER_MANAGED workspace to SERVICE_MANAGED. Do not include this parameter if you want to leave the workspace as SERVICE_MANAGED.

    You can convert a CUSTOMER_MANAGED workspace to SERVICE_MANAGED using the Amazon Managed Grafana console. For more information, see Managing permissions for data sources and notification channels.

  • removeNetworkAccessConfiguration (boolean) –

    Whether to remove the network access configuration from the workspace.

    Setting this to true and providing a networkAccessControl to set will return an error.

    If you remove this configuration by setting this to true, then all IP addresses and VPC endpoints will be allowed. Standard Grafana authentication and authorization will still be required.

  • removeVpcConfiguration (boolean) –

    Whether to remove the VPC configuration from the workspace.

    Setting this to true and providing a vpcConfiguration to set will return an error.

  • stackSetName (string) – The name of the CloudFormation stack set to use to generate IAM roles to be used for this workspace.

  • vpcConfiguration (dict) –

    The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

    • securityGroupIds (list) – [REQUIRED]

      The list of Amazon EC2 security group IDs attached to the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

      • (string) –

    • subnetIds (list) – [REQUIRED]

      The list of Amazon EC2 subnet IDs created in the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

      • (string) –

  • workspaceDataSources (list) –

    This parameter is for internal use only, and should not be used.

    • (string) –

  • workspaceDescription (string) – A description for the workspace. This is used only to help you identify this workspace.

  • workspaceId (string) –

    [REQUIRED]

    The ID of the workspace to update.

  • workspaceName (string) – A new name for the workspace to update.

  • workspaceNotificationDestinations (list) –

    Specify the Amazon Web Services notification channels that you plan to use in this workspace. Specifying these data sources here enables Amazon Managed Grafana to create IAM roles and permissions that allow Amazon Managed Grafana to use these channels.

    • (string) –

  • workspaceOrganizationalUnits (list) –

    Specifies the organizational units that this workspace is allowed to use data sources from, if this workspace is in an account that is part of an organization.

    • (string) –

  • workspaceRoleArn (string) – Specifies an IAM role that grants permissions to Amazon Web Services resources that the workspace accesses, such as data sources and notification channels. If this workspace has permissionType CUSTOMER_MANAGED, then this role is required.

Return type:

dict

Returns:

Response Syntax

{
    'workspace': {
        'accountAccessType': 'CURRENT_ACCOUNT'|'ORGANIZATION',
        'authentication': {
            'providers': [
                'AWS_SSO'|'SAML',
            ],
            'samlConfigurationStatus': 'CONFIGURED'|'NOT_CONFIGURED'
        },
        'created': datetime(2015, 1, 1),
        'dataSources': [
            'AMAZON_OPENSEARCH_SERVICE'|'CLOUDWATCH'|'PROMETHEUS'|'XRAY'|'TIMESTREAM'|'SITEWISE'|'ATHENA'|'REDSHIFT'|'TWINMAKER',
        ],
        'description': 'string',
        'endpoint': 'string',
        'freeTrialConsumed': True|False,
        'freeTrialExpiration': datetime(2015, 1, 1),
        'grafanaToken': 'string',
        'grafanaVersion': 'string',
        'id': 'string',
        'licenseExpiration': datetime(2015, 1, 1),
        'licenseType': 'ENTERPRISE'|'ENTERPRISE_FREE_TRIAL',
        'modified': datetime(2015, 1, 1),
        'name': 'string',
        'networkAccessControl': {
            'prefixListIds': [
                'string',
            ],
            'vpceIds': [
                'string',
            ]
        },
        'notificationDestinations': [
            'SNS',
        ],
        'organizationRoleName': 'string',
        'organizationalUnits': [
            'string',
        ],
        'permissionType': 'CUSTOMER_MANAGED'|'SERVICE_MANAGED',
        'stackSetName': 'string',
        'status': 'ACTIVE'|'CREATING'|'DELETING'|'FAILED'|'UPDATING'|'UPGRADING'|'DELETION_FAILED'|'CREATION_FAILED'|'UPDATE_FAILED'|'UPGRADE_FAILED'|'LICENSE_REMOVAL_FAILED'|'VERSION_UPDATING'|'VERSION_UPDATE_FAILED',
        'tags': {
            'string': 'string'
        },
        'vpcConfiguration': {
            'securityGroupIds': [
                'string',
            ],
            'subnetIds': [
                'string',
            ]
        },
        'workspaceRoleArn': 'string'
    }
}

Response Structure

  • (dict) –

    • workspace (dict) –

      A structure containing data about the workspace that was created.

      • accountAccessType (string) –

        Specifies whether the workspace can access Amazon Web Services resources in this Amazon Web Services account only, or whether it can also access Amazon Web Services resources in other accounts in the same organization. If this is ORGANIZATION, the workspaceOrganizationalUnits parameter specifies which organizational units the workspace can access.

      • authentication (dict) –

        A structure that describes whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.

        • providers (list) –

          Specifies whether the workspace uses SAML, IAM Identity Center, or both methods for user authentication.

          • (string) –

        • samlConfigurationStatus (string) –

          Specifies whether the workplace’s user authentication method is fully configured.

      • created (datetime) –

        The date that the workspace was created.

      • dataSources (list) –

        Specifies the Amazon Web Services data sources that have been configured to have IAM roles and permissions created to allow Amazon Managed Grafana to read data from these sources.

        This list is only used when the workspace was created through the Amazon Web Services console, and the permissionType is SERVICE_MANAGED.

        • (string) –

      • description (string) –

        The user-defined description of the workspace.

      • endpoint (string) –

        The URL that users can use to access the Grafana console in the workspace.

      • freeTrialConsumed (boolean) –

        Specifies whether this workspace has already fully used its free trial for Grafana Enterprise.

        Note

        Amazon Managed Grafana workspaces no longer support Grafana Enterprise free trials.

      • freeTrialExpiration (datetime) –

        If this workspace is currently in the free trial period for Grafana Enterprise, this value specifies when that free trial ends.

        Note

        Amazon Managed Grafana workspaces no longer support Grafana Enterprise free trials.

      • grafanaToken (string) –

        The token that ties this workspace to a Grafana Labs account. For more information, see Link your account with Grafana Labs.

      • grafanaVersion (string) –

        The version of Grafana supported in this workspace.

      • id (string) –

        The unique ID of this workspace.

      • licenseExpiration (datetime) –

        If this workspace has a full Grafana Enterprise license purchased through Amazon Web Services Marketplace, this specifies when the license ends and will need to be renewed. Purchasing the Enterprise plugins option through Amazon Managed Grafana does not have an expiration. It is valid until the license is removed.

      • licenseType (string) –

        Specifies whether this workspace has a full Grafana Enterprise license.

        Note

        Amazon Managed Grafana workspaces no longer support Grafana Enterprise free trials.

      • modified (datetime) –

        The most recent date that the workspace was modified.

      • name (string) –

        The name of the workspace.

      • networkAccessControl (dict) –

        The configuration settings for network access to your workspace.

        • prefixListIds (list) –

          An array of prefix list IDs. A prefix list is a list of CIDR ranges of IP addresses. The IP addresses specified are allowed to access your workspace. If the list is not included in the configuration (passed an empty array) then no IP addresses are allowed to access the workspace. You create a prefix list using the Amazon VPC console.

          Prefix list IDs have the format ``pl-1a2b3c4d ``.

          For more information about prefix lists, see `Group CIDR blocks using managed prefix lists <https://docs.aws.amazon.com/vpc/latest/userguide/managed-prefix-lists.html>`__in the Amazon Virtual Private Cloud User Guide.

          • (string) –

        • vpceIds (list) –

          An array of Amazon VPC endpoint IDs for the workspace. You can create VPC endpoints to your Amazon Managed Grafana workspace for access from within a VPC. If a NetworkAccessConfiguration is specified then only VPC endpoints specified here are allowed to access the workspace. If you pass in an empty array of strings, then no VPCs are allowed to access the workspace.

          VPC endpoint IDs have the format ``vpce-1a2b3c4d ``.

          For more information about creating an interface VPC endpoint, see Interface VPC endpoints in the Amazon Managed Grafana User Guide.

          Note

          The only VPC endpoints that can be specified here are interface VPC endpoints for Grafana workspaces (using the com.amazonaws.[region].grafana-workspace service endpoint). Other VPC endpoints are ignored.

          • (string) –

      • notificationDestinations (list) –

        The Amazon Web Services notification channels that Amazon Managed Grafana can automatically create IAM roles and permissions for, to allow Amazon Managed Grafana to use these channels.

        • (string) –

      • organizationRoleName (string) –

        The name of the IAM role that is used to access resources through Organizations.

      • organizationalUnits (list) –

        Specifies the organizational units that this workspace is allowed to use data sources from, if this workspace is in an account that is part of an organization.

        • (string) –

      • permissionType (string) –

        If this is SERVICE_MANAGED, and the workplace was created through the Amazon Managed Grafana console, then Amazon Managed Grafana automatically creates the IAM roles and provisions the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.

        If this is CUSTOMER_MANAGED, you must manage those roles and permissions yourself.

        If you are working with a workspace in a member account of an organization and that account is not a delegated administrator account, and you want the workspace to access data sources in other Amazon Web Services accounts in the organization, this parameter must be set to CUSTOMER_MANAGED.

        For more information about converting between customer and service managed, see Managing permissions for data sources and notification channels. For more information about the roles and permissions that must be managed for customer managed workspaces, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels

      • stackSetName (string) –

        The name of the CloudFormation stack set that is used to generate IAM roles to be used for this workspace.

      • status (string) –

        The current status of the workspace.

      • tags (dict) –

        The list of tags associated with the workspace.

        • (string) –

          • (string) –

      • vpcConfiguration (dict) –

        The configuration for connecting to data sources in a private VPC (Amazon Virtual Private Cloud).

        • securityGroupIds (list) –

          The list of Amazon EC2 security group IDs attached to the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

          • (string) –

        • subnetIds (list) –

          The list of Amazon EC2 subnet IDs created in the Amazon VPC for your Grafana workspace to connect. Duplicates not allowed.

          • (string) –

      • workspaceRoleArn (string) –

        The IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from. This role must already exist.

Exceptions

  • ManagedGrafana.Client.exceptions.ResourceNotFoundException

  • ManagedGrafana.Client.exceptions.ThrottlingException

  • ManagedGrafana.Client.exceptions.ConflictException

  • ManagedGrafana.Client.exceptions.ValidationException

  • ManagedGrafana.Client.exceptions.AccessDeniedException

  • ManagedGrafana.Client.exceptions.InternalServerException