/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Describes SAML options for an OpenSearch Serverless security configuration in
* the form of a key-value map.See Also:
AWS
* API Reference
The group attribute for this SAML integration.
*/ inline const Aws::String& GetGroupAttribute() const{ return m_groupAttribute; } /** *The group attribute for this SAML integration.
*/ inline bool GroupAttributeHasBeenSet() const { return m_groupAttributeHasBeenSet; } /** *The group attribute for this SAML integration.
*/ inline void SetGroupAttribute(const Aws::String& value) { m_groupAttributeHasBeenSet = true; m_groupAttribute = value; } /** *The group attribute for this SAML integration.
*/ inline void SetGroupAttribute(Aws::String&& value) { m_groupAttributeHasBeenSet = true; m_groupAttribute = std::move(value); } /** *The group attribute for this SAML integration.
*/ inline void SetGroupAttribute(const char* value) { m_groupAttributeHasBeenSet = true; m_groupAttribute.assign(value); } /** *The group attribute for this SAML integration.
*/ inline SamlConfigOptions& WithGroupAttribute(const Aws::String& value) { SetGroupAttribute(value); return *this;} /** *The group attribute for this SAML integration.
*/ inline SamlConfigOptions& WithGroupAttribute(Aws::String&& value) { SetGroupAttribute(std::move(value)); return *this;} /** *The group attribute for this SAML integration.
*/ inline SamlConfigOptions& WithGroupAttribute(const char* value) { SetGroupAttribute(value); return *this;} /** *The XML IdP metadata file generated from your identity provider.
*/ inline const Aws::String& GetMetadata() const{ return m_metadata; } /** *The XML IdP metadata file generated from your identity provider.
*/ inline bool MetadataHasBeenSet() const { return m_metadataHasBeenSet; } /** *The XML IdP metadata file generated from your identity provider.
*/ inline void SetMetadata(const Aws::String& value) { m_metadataHasBeenSet = true; m_metadata = value; } /** *The XML IdP metadata file generated from your identity provider.
*/ inline void SetMetadata(Aws::String&& value) { m_metadataHasBeenSet = true; m_metadata = std::move(value); } /** *The XML IdP metadata file generated from your identity provider.
*/ inline void SetMetadata(const char* value) { m_metadataHasBeenSet = true; m_metadata.assign(value); } /** *The XML IdP metadata file generated from your identity provider.
*/ inline SamlConfigOptions& WithMetadata(const Aws::String& value) { SetMetadata(value); return *this;} /** *The XML IdP metadata file generated from your identity provider.
*/ inline SamlConfigOptions& WithMetadata(Aws::String&& value) { SetMetadata(std::move(value)); return *this;} /** *The XML IdP metadata file generated from your identity provider.
*/ inline SamlConfigOptions& WithMetadata(const char* value) { SetMetadata(value); return *this;} /** *The session timeout, in minutes. Default is 60 minutes (12 hours).
*/ inline int GetSessionTimeout() const{ return m_sessionTimeout; } /** *The session timeout, in minutes. Default is 60 minutes (12 hours).
*/ inline bool SessionTimeoutHasBeenSet() const { return m_sessionTimeoutHasBeenSet; } /** *The session timeout, in minutes. Default is 60 minutes (12 hours).
*/ inline void SetSessionTimeout(int value) { m_sessionTimeoutHasBeenSet = true; m_sessionTimeout = value; } /** *The session timeout, in minutes. Default is 60 minutes (12 hours).
*/ inline SamlConfigOptions& WithSessionTimeout(int value) { SetSessionTimeout(value); return *this;} /** *A user attribute for this SAML integration.
*/ inline const Aws::String& GetUserAttribute() const{ return m_userAttribute; } /** *A user attribute for this SAML integration.
*/ inline bool UserAttributeHasBeenSet() const { return m_userAttributeHasBeenSet; } /** *A user attribute for this SAML integration.
*/ inline void SetUserAttribute(const Aws::String& value) { m_userAttributeHasBeenSet = true; m_userAttribute = value; } /** *A user attribute for this SAML integration.
*/ inline void SetUserAttribute(Aws::String&& value) { m_userAttributeHasBeenSet = true; m_userAttribute = std::move(value); } /** *A user attribute for this SAML integration.
*/ inline void SetUserAttribute(const char* value) { m_userAttributeHasBeenSet = true; m_userAttribute.assign(value); } /** *A user attribute for this SAML integration.
*/ inline SamlConfigOptions& WithUserAttribute(const Aws::String& value) { SetUserAttribute(value); return *this;} /** *A user attribute for this SAML integration.
*/ inline SamlConfigOptions& WithUserAttribute(Aws::String&& value) { SetUserAttribute(std::move(value)); return *this;} /** *A user attribute for this SAML integration.
*/ inline SamlConfigOptions& WithUserAttribute(const char* value) { SetUserAttribute(value); return *this;} private: Aws::String m_groupAttribute; bool m_groupAttributeHasBeenSet = false; Aws::String m_metadata; bool m_metadataHasBeenSet = false; int m_sessionTimeout; bool m_sessionTimeoutHasBeenSet = false; Aws::String m_userAttribute; bool m_userAttributeHasBeenSet = false; }; } // namespace Model } // namespace OpenSearchServerless } // namespace Aws