/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include A structure containing information about the user authentication methods used
* by the workspace.See Also:
AWS
* API Reference
A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline const AwsSsoAuthentication& GetAwsSso() const{ return m_awsSso; } /** *A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline bool AwsSsoHasBeenSet() const { return m_awsSsoHasBeenSet; } /** *A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline void SetAwsSso(const AwsSsoAuthentication& value) { m_awsSsoHasBeenSet = true; m_awsSso = value; } /** *A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline void SetAwsSso(AwsSsoAuthentication&& value) { m_awsSsoHasBeenSet = true; m_awsSso = std::move(value); } /** *A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline AuthenticationDescription& WithAwsSso(const AwsSsoAuthentication& value) { SetAwsSso(value); return *this;} /** *A structure containing information about how this workspace works with IAM * Identity Center.
*/ inline AuthenticationDescription& WithAwsSso(AwsSsoAuthentication&& value) { SetAwsSso(std::move(value)); return *this;} /** *Specifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline const Aws::VectorSpecifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline bool ProvidersHasBeenSet() const { return m_providersHasBeenSet; } /** *Specifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline void SetProviders(const Aws::VectorSpecifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline void SetProviders(Aws::VectorSpecifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline AuthenticationDescription& WithProviders(const Aws::VectorSpecifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline AuthenticationDescription& WithProviders(Aws::VectorSpecifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline AuthenticationDescription& AddProviders(const AuthenticationProviderTypes& value) { m_providersHasBeenSet = true; m_providers.push_back(value); return *this; } /** *Specifies whether this workspace uses IAM Identity Center, SAML, or both * methods to authenticate users to use the Grafana console in the Amazon Managed * Grafana workspace.
*/ inline AuthenticationDescription& AddProviders(AuthenticationProviderTypes&& value) { m_providersHasBeenSet = true; m_providers.push_back(std::move(value)); return *this; } /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline const SamlAuthentication& GetSaml() const{ return m_saml; } /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline bool SamlHasBeenSet() const { return m_samlHasBeenSet; } /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline void SetSaml(const SamlAuthentication& value) { m_samlHasBeenSet = true; m_saml = value; } /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline void SetSaml(SamlAuthentication&& value) { m_samlHasBeenSet = true; m_saml = std::move(value); } /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline AuthenticationDescription& WithSaml(const SamlAuthentication& value) { SetSaml(value); return *this;} /** *A structure containing information about how this workspace works with SAML, * including what attributes within the assertion are to be mapped to user * information in the workspace.
*/ inline AuthenticationDescription& WithSaml(SamlAuthentication&& value) { SetSaml(std::move(value)); return *this;} private: AwsSsoAuthentication m_awsSso; bool m_awsSsoHasBeenSet = false; Aws::Vector