Interface CfnWorkspaceProps

All Superinterfaces:
software.amazon.jsii.JsiiSerializable
All Known Implementing Classes:
CfnWorkspaceProps.Jsii$Proxy

@Generated(value="jsii-pacmak/1.84.0 (build 5404dcf)", date="2023-06-19T16:29:56.938Z") @Stability(Stable) public interface CfnWorkspaceProps extends software.amazon.jsii.JsiiSerializable
Properties for defining a CfnWorkspace.

Example:

 // The code below shows an example of how to instantiate this type.
 // The values are placeholders you should change.
 import software.amazon.awscdk.services.grafana.*;
 CfnWorkspaceProps cfnWorkspaceProps = CfnWorkspaceProps.builder()
         .accountAccessType("accountAccessType")
         .authenticationProviders(List.of("authenticationProviders"))
         .permissionType("permissionType")
         // the properties below are optional
         .clientToken("clientToken")
         .dataSources(List.of("dataSources"))
         .description("description")
         .grafanaVersion("grafanaVersion")
         .name("name")
         .networkAccessControl(NetworkAccessControlProperty.builder()
                 .prefixListIds(List.of("prefixListIds"))
                 .vpceIds(List.of("vpceIds"))
                 .build())
         .notificationDestinations(List.of("notificationDestinations"))
         .organizationalUnits(List.of("organizationalUnits"))
         .organizationRoleName("organizationRoleName")
         .roleArn("roleArn")
         .samlConfiguration(SamlConfigurationProperty.builder()
                 .idpMetadata(IdpMetadataProperty.builder()
                         .url("url")
                         .xml("xml")
                         .build())
                 // the properties below are optional
                 .allowedOrganizations(List.of("allowedOrganizations"))
                 .assertionAttributes(AssertionAttributesProperty.builder()
                         .email("email")
                         .groups("groups")
                         .login("login")
                         .name("name")
                         .org("org")
                         .role("role")
                         .build())
                 .loginValidityDuration(123)
                 .roleValues(RoleValuesProperty.builder()
                         .admin(List.of("admin"))
                         .editor(List.of("editor"))
                         .build())
                 .build())
         .stackSetName("stackSetName")
         .vpcConfiguration(VpcConfigurationProperty.builder()
                 .securityGroupIds(List.of("securityGroupIds"))
                 .subnetIds(List.of("subnetIds"))
                 .build())
         .build();
 
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Interface
    Description
    static final class 
    A builder for CfnWorkspaceProps
    static final class 
    An implementation for CfnWorkspaceProps
  • Method Summary

    Modifier and Type
    Method
    Description
     
    Specifies whether the workspace can access AWS resources in this AWS account only, or whether it can also access AWS resources in other accounts in the same organization.
    Specifies whether this workspace uses SAML 2.0, AWS IAM Identity Center (successor to AWS Single Sign-On) , or both to authenticate users for using the Grafana console within a workspace.
    default String
    A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.
    default List<String>
    Specifies the AWS data sources that have been configured to have IAM roles and permissions created to allow Amazon Managed Grafana to read data from these sources.
    default String
    The user-defined description of the workspace.
    default String
    Specifies the version of Grafana to support in the new workspace.
    default String
    The name of the workspace.
    default Object
    The configuration settings for network access to your workspace.
    default List<String>
    The AWS notification channels that Amazon Managed Grafana can automatically create IAM roles and permissions for, to allow Amazon Managed Grafana to use these channels.
    default List<String>
    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.
    default String
    The name of the IAM role that is used to access resources through Organizations .
    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 AWS data sources and notification channels.
    default String
    The IAM role that grants permissions to the AWS resources that the workspace will view data from.
    default Object
    If the workspace uses SAML, use this structure to map SAML assertion attributes to workspace user information and define which groups in the assertion attribute are to have the Admin and Editor roles in the workspace.
    default String
    The name of the AWS CloudFormation stack set that is used to generate IAM roles to be used for this workspace.
    default Object
    The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

    Methods inherited from interface software.amazon.jsii.JsiiSerializable

    $jsii$toJson
  • Method Details

    • getAccountAccessType

      @Stability(Stable) @NotNull String getAccountAccessType()
      Specifies whether the workspace can access AWS resources in this AWS account only, or whether it can also access AWS resources in other accounts in the same organization.

      If this is ORGANIZATION , the OrganizationalUnits parameter specifies which organizational units the workspace can access.

    • getAuthenticationProviders

      @Stability(Stable) @NotNull List<String> getAuthenticationProviders()
      Specifies whether this workspace uses SAML 2.0, AWS IAM Identity Center (successor to AWS Single Sign-On) , or both to authenticate users for using the Grafana console within a workspace. For more information, see User authentication in Amazon Managed Grafana .
    • getPermissionType

      @Stability(Stable) @NotNull String getPermissionType()
      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 AWS 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 AWS 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 AWS data sources and notification channels

    • getClientToken

      @Stability(Stable) @Nullable default String getClientToken()
      A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.
    • getDataSources

      @Stability(Stable) @Nullable default List<String> getDataSources()
      Specifies the AWS 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 AWS console, and the permissionType is SERVICE_MANAGED .

    • getDescription

      @Stability(Stable) @Nullable default String getDescription()
      The user-defined description of the workspace.
    • getGrafanaVersion

      @Stability(Stable) @Nullable default String getGrafanaVersion()
      Specifies the version of Grafana to support in the new workspace.

      Supported values are 8.4 and 9.4 .

    • getName

      @Stability(Stable) @Nullable default String getName()
      The name of the workspace.
    • getNetworkAccessControl

      @Stability(Stable) @Nullable default Object getNetworkAccessControl()
      The configuration settings for network access to your workspace.
    • getNotificationDestinations

      @Stability(Stable) @Nullable default List<String> getNotificationDestinations()
      The AWS notification channels that Amazon Managed Grafana can automatically create IAM roles and permissions for, to allow Amazon Managed Grafana to use these channels.
    • getOrganizationalUnits

      @Stability(Stable) @Nullable default List<String> getOrganizationalUnits()
      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.
    • getOrganizationRoleName

      @Stability(Stable) @Nullable default String getOrganizationRoleName()
      The name of the IAM role that is used to access resources through Organizations .
    • getRoleArn

      @Stability(Stable) @Nullable default String getRoleArn()
      The IAM role that grants permissions to the AWS resources that the workspace will view data from.

      This role must already exist.

    • getSamlConfiguration

      @Stability(Stable) @Nullable default Object getSamlConfiguration()
      If the workspace uses SAML, use this structure to map SAML assertion attributes to workspace user information and define which groups in the assertion attribute are to have the Admin and Editor roles in the workspace.
    • getStackSetName

      @Stability(Stable) @Nullable default String getStackSetName()
      The name of the AWS CloudFormation stack set that is used to generate IAM roles to be used for this workspace.
    • getVpcConfiguration

      @Stability(Stable) @Nullable default Object getVpcConfiguration()
      The configuration settings for an Amazon VPC that contains data sources for your Grafana workspace to connect to.

      Connecting to a private VPC is not yet available in the Asia Pacific (Seoul) Region (ap-northeast-2).

    • builder

      @Stability(Stable) static CfnWorkspaceProps.Builder builder()
      Returns:
      a CfnWorkspaceProps.Builder of CfnWorkspaceProps