#[non_exhaustive]
pub struct CreateWorkspaceInput {
Show 17 fields pub account_access_type: Option<AccountAccessType>, pub client_token: Option<String>, pub organization_role_name: Option<String>, pub permission_type: Option<PermissionType>, pub stack_set_name: Option<String>, pub workspace_data_sources: Option<Vec<DataSourceType>>, pub workspace_description: Option<String>, pub workspace_name: Option<String>, pub workspace_notification_destinations: Option<Vec<NotificationDestinationType>>, pub workspace_organizational_units: Option<Vec<String>>, pub workspace_role_arn: Option<String>, pub authentication_providers: Option<Vec<AuthenticationProviderTypes>>, pub tags: Option<HashMap<String, String>>, pub vpc_configuration: Option<VpcConfiguration>, pub configuration: Option<String>, pub network_access_control: Option<NetworkAccessConfiguration>, pub grafana_version: Option<String>,
}

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§account_access_type: Option<AccountAccessType>

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.

§client_token: Option<String>

A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

§organization_role_name: Option<String>

The name of an IAM role that already exists to use with Organizations to access Amazon Web Services data sources and notification channels in other accounts in an organization.

§permission_type: Option<PermissionType>

When creating a workspace through the Amazon Web Services API, CLI or Amazon Web Services CloudFormation, you must manage IAM roles and provision the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.

You must also specify a workspaceRoleArn for a role that you will manage for the workspace to use when accessing those datasources and notification channels.

The ability for Amazon Managed Grafana to create and update IAM roles on behalf of the user is supported only in the Amazon Managed Grafana console, where this value may be set to SERVICE_MANAGED.

Use only the CUSTOMER_MANAGED permission type when creating a workspace with the API, CLI or Amazon Web Services CloudFormation.

For more information, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels.

§stack_set_name: Option<String>

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

§workspace_data_sources: Option<Vec<DataSourceType>>

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

§workspace_description: Option<String>

A description for the workspace. This is used only to help you identify this workspace.

Pattern: ^\[\\p{L}\\p{Z}\\p{N}\\p{P}\]{0,2048}$

§workspace_name: Option<String>

The name for the workspace. It does not have to be unique.

§workspace_notification_destinations: Option<Vec<NotificationDestinationType>>

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.

§workspace_organizational_units: Option<Vec<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.

§workspace_role_arn: Option<String>

Specified the IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from, including both data sources and notification channels. You are responsible for managing the permissions for this role as new data sources or notification channels are added.

§authentication_providers: Option<Vec<AuthenticationProviderTypes>>

Specifies whether this workspace uses SAML 2.0, IAM Identity Center, or both to authenticate users for using the Grafana console within a workspace. For more information, see User authentication in Amazon Managed Grafana.

§tags: Option<HashMap<String, String>>

The list of tags associated with the workspace.

§vpc_configuration: Option<VpcConfiguration>

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).

§configuration: Option<String>

The configuration string for the workspace that you create. For more information about the format and configuration options available, see Working in your Grafana workspace.

§network_access_control: Option<NetworkAccessConfiguration>

Configuration 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.

§grafana_version: Option<String>

Specifies the version of Grafana to support in the new workspace. If not specified, defaults to the latest version (for example, 10.4).

To get a list of supported versions, use the ListVersions operation.

Implementations§

source§

impl CreateWorkspaceInput

source

pub fn account_access_type(&self) -> Option<&AccountAccessType>

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.

source

pub fn client_token(&self) -> Option<&str>

A unique, case-sensitive, user-provided identifier to ensure the idempotency of the request.

source

pub fn organization_role_name(&self) -> Option<&str>

The name of an IAM role that already exists to use with Organizations to access Amazon Web Services data sources and notification channels in other accounts in an organization.

source

pub fn permission_type(&self) -> Option<&PermissionType>

When creating a workspace through the Amazon Web Services API, CLI or Amazon Web Services CloudFormation, you must manage IAM roles and provision the permissions that the workspace needs to use Amazon Web Services data sources and notification channels.

You must also specify a workspaceRoleArn for a role that you will manage for the workspace to use when accessing those datasources and notification channels.

The ability for Amazon Managed Grafana to create and update IAM roles on behalf of the user is supported only in the Amazon Managed Grafana console, where this value may be set to SERVICE_MANAGED.

Use only the CUSTOMER_MANAGED permission type when creating a workspace with the API, CLI or Amazon Web Services CloudFormation.

For more information, see Amazon Managed Grafana permissions and policies for Amazon Web Services data sources and notification channels.

source

pub fn stack_set_name(&self) -> Option<&str>

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

source

pub fn workspace_data_sources(&self) -> &[DataSourceType]

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

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .workspace_data_sources.is_none().

source

pub fn workspace_description(&self) -> Option<&str>

A description for the workspace. This is used only to help you identify this workspace.

Pattern: ^\[\\p{L}\\p{Z}\\p{N}\\p{P}\]{0,2048}$

source

pub fn workspace_name(&self) -> Option<&str>

The name for the workspace. It does not have to be unique.

source

pub fn workspace_notification_destinations( &self, ) -> &[NotificationDestinationType]

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.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .workspace_notification_destinations.is_none().

source

pub fn workspace_organizational_units(&self) -> &[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.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .workspace_organizational_units.is_none().

source

pub fn workspace_role_arn(&self) -> Option<&str>

Specified the IAM role that grants permissions to the Amazon Web Services resources that the workspace will view data from, including both data sources and notification channels. You are responsible for managing the permissions for this role as new data sources or notification channels are added.

source

pub fn authentication_providers(&self) -> &[AuthenticationProviderTypes]

Specifies whether this workspace uses SAML 2.0, IAM Identity Center, or both to authenticate users for using the Grafana console within a workspace. For more information, see User authentication in Amazon Managed Grafana.

If no value was sent for this field, a default will be set. If you want to determine if no value was sent, use .authentication_providers.is_none().

source

pub fn tags(&self) -> Option<&HashMap<String, String>>

The list of tags associated with the workspace.

source

pub fn vpc_configuration(&self) -> Option<&VpcConfiguration>

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).

source

pub fn configuration(&self) -> Option<&str>

The configuration string for the workspace that you create. For more information about the format and configuration options available, see Working in your Grafana workspace.

source

pub fn network_access_control(&self) -> Option<&NetworkAccessConfiguration>

Configuration 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.

source

pub fn grafana_version(&self) -> Option<&str>

Specifies the version of Grafana to support in the new workspace. If not specified, defaults to the latest version (for example, 10.4).

To get a list of supported versions, use the ListVersions operation.

source§

impl CreateWorkspaceInput

source

pub fn builder() -> CreateWorkspaceInputBuilder

Creates a new builder-style object to manufacture CreateWorkspaceInput.

Trait Implementations§

source§

impl Clone for CreateWorkspaceInput

source§

fn clone(&self) -> CreateWorkspaceInput

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CreateWorkspaceInput

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl PartialEq for CreateWorkspaceInput

source§

fn eq(&self, other: &CreateWorkspaceInput) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl StructuralPartialEq for CreateWorkspaceInput

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T> Instrument for T

source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

impl<Unshared, Shared> IntoShared<Shared> for Unshared
where Shared: FromUnshared<Unshared>,

source§

fn into_shared(self) -> Shared

Creates a shared type from an unshared type.
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithSubscriber for T

source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more