#[non_exhaustive]
pub struct UpdateWorkspaceInput {
Show 15 fields pub account_access_type: Option<AccountAccessType>, 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_id: 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 vpc_configuration: Option<VpcConfiguration>, pub remove_vpc_configuration: Option<bool>, pub network_access_control: Option<NetworkAccessConfiguration>, pub remove_network_access_configuration: Option<bool>,
}

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.

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

§permission_type: Option<PermissionType>

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

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.

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

§workspace_id: Option<String>

The ID of the workspace to update.

§workspace_name: Option<String>

A new name for the workspace to update.

§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>

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.

§vpc_configuration: Option<VpcConfiguration>

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

§remove_vpc_configuration: Option<bool>

Whether to remove the VPC configuration from the workspace.

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

§network_access_control: Option<NetworkAccessConfiguration>

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.

§remove_network_access_configuration: Option<bool>

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.

Implementations§

source§

impl UpdateWorkspaceInput

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 organization_role_name(&self) -> Option<&str>

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.

source

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

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

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.

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) -> Option<&[DataSourceType]>

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

source

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

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

source

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

The ID of the workspace to update.

source

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

A new name for the workspace to update.

source

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

source

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

source

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

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.

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.

source

pub fn remove_vpc_configuration(&self) -> Option<bool>

Whether to remove the VPC configuration from the workspace.

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

source

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

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.

source

pub fn remove_network_access_configuration(&self) -> Option<bool>

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.

source§

impl UpdateWorkspaceInput

source

pub fn builder() -> UpdateWorkspaceInputBuilder

Creates a new builder-style object to manufacture UpdateWorkspaceInput.

Trait Implementations§

source§

impl Clone for UpdateWorkspaceInput

source§

fn clone(&self) -> UpdateWorkspaceInput

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 UpdateWorkspaceInput

source§

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

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

impl PartialEq<UpdateWorkspaceInput> for UpdateWorkspaceInput

source§

fn eq(&self, other: &UpdateWorkspaceInput) -> 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 UpdateWorkspaceInput

Auto Trait Implementations§

Blanket Implementations§

source§

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

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

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

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere 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 Twhere 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> Same<T> for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere 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 Twhere 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 Twhere 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