7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/AIAgent.h>
10#include <aws/connect/model/Application.h>
11#include <aws/connect/model/FlowModule.h>
12#include <aws/connect/model/GranularAccessControlConfiguration.h>
13#include <aws/core/utils/memory/stl/AWSMap.h>
14#include <aws/core/utils/memory/stl/AWSString.h>
15#include <aws/core/utils/memory/stl/AWSVector.h>
43 template <
typename SecurityProfileNameT = Aws::String>
45 m_securityProfileNameHasBeenSet =
true;
46 m_securityProfileName = std::forward<SecurityProfileNameT>(value);
48 template <
typename SecurityProfileNameT = Aws::String>
61 template <
typename DescriptionT = Aws::String>
63 m_descriptionHasBeenSet =
true;
64 m_description = std::forward<DescriptionT>(value);
66 template <
typename DescriptionT = Aws::String>
82 template <
typename PermissionsT = Aws::Vector<Aws::String>>
84 m_permissionsHasBeenSet =
true;
85 m_permissions = std::forward<PermissionsT>(value);
87 template <
typename PermissionsT = Aws::Vector<Aws::String>>
92 template <
typename PermissionsT = Aws::String>
94 m_permissionsHasBeenSet =
true;
95 m_permissions.emplace_back(std::forward<PermissionsT>(value));
108 template <
typename InstanceIdT = Aws::String>
110 m_instanceIdHasBeenSet =
true;
111 m_instanceId = std::forward<InstanceIdT>(value);
113 template <
typename InstanceIdT = Aws::String>
127 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
129 m_tagsHasBeenSet =
true;
130 m_tags = std::forward<TagsT>(value);
132 template <
typename TagsT = Aws::Map<Aws::String, Aws::String>>
134 SetTags(std::forward<TagsT>(value));
137 template <
typename TagsKeyT = Aws::String,
typename TagsValueT = Aws::String>
139 m_tagsHasBeenSet =
true;
140 m_tags.emplace(std::forward<TagsKeyT>(key), std::forward<TagsValueT>(value));
152 template <
typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
154 m_allowedAccessControlTagsHasBeenSet =
true;
155 m_allowedAccessControlTags = std::forward<AllowedAccessControlTagsT>(value);
157 template <
typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
162 template <
typename AllowedAccessControlTagsKeyT = Aws::String,
typename AllowedAccessControlTagsValueT = Aws::String>
164 m_allowedAccessControlTagsHasBeenSet =
true;
165 m_allowedAccessControlTags.emplace(std::forward<AllowedAccessControlTagsKeyT>(key),
166 std::forward<AllowedAccessControlTagsValueT>(value));
181 template <
typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
183 m_tagRestrictedResourcesHasBeenSet =
true;
184 m_tagRestrictedResources = std::forward<TagRestrictedResourcesT>(value);
186 template <
typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
191 template <
typename TagRestrictedResourcesT = Aws::String>
193 m_tagRestrictedResourcesHasBeenSet =
true;
194 m_tagRestrictedResources.emplace_back(std::forward<TagRestrictedResourcesT>(value));
206 template <
typename ApplicationsT = Aws::Vector<Application>>
208 m_applicationsHasBeenSet =
true;
209 m_applications = std::forward<ApplicationsT>(value);
211 template <
typename ApplicationsT = Aws::Vector<Application>>
216 template <
typename ApplicationsT = Application>
218 m_applicationsHasBeenSet =
true;
219 m_applications.emplace_back(std::forward<ApplicationsT>(value));
232 template <
typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
234 m_hierarchyRestrictedResourcesHasBeenSet =
true;
235 m_hierarchyRestrictedResources = std::forward<HierarchyRestrictedResourcesT>(value);
237 template <
typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
242 template <
typename HierarchyRestrictedResourcesT = Aws::String>
244 m_hierarchyRestrictedResourcesHasBeenSet =
true;
245 m_hierarchyRestrictedResources.emplace_back(std::forward<HierarchyRestrictedResourcesT>(value));
257 template <
typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
259 m_allowedAccessControlHierarchyGroupIdHasBeenSet =
true;
260 m_allowedAccessControlHierarchyGroupId = std::forward<AllowedAccessControlHierarchyGroupIdT>(value);
262 template <
typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
275 template <
typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
277 m_allowedFlowModulesHasBeenSet =
true;
278 m_allowedFlowModules = std::forward<AllowedFlowModulesT>(value);
280 template <
typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
285 template <
typename AllowedFlowModulesT = FlowModule>
287 m_allowedFlowModulesHasBeenSet =
true;
288 m_allowedFlowModules.emplace_back(std::forward<AllowedFlowModulesT>(value));
299 template <
typename AllowedAIAgentsT = Aws::Vector<AIAgent>>
301 m_allowedAIAgentsHasBeenSet =
true;
302 m_allowedAIAgents = std::forward<AllowedAIAgentsT>(value);
304 template <
typename AllowedAIAgentsT = Aws::Vector<AIAgent>>
309 template <
typename AllowedAIAgentsT = AIAgent>
311 m_allowedAIAgentsHasBeenSet =
true;
312 m_allowedAIAgents.emplace_back(std::forward<AllowedAIAgentsT>(value));
323 return m_granularAccessControlConfiguration;
326 template <
typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
328 m_granularAccessControlConfigurationHasBeenSet =
true;
329 m_granularAccessControlConfiguration = std::forward<GranularAccessControlConfigurationT>(value);
331 template <
typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
356 Aws::String m_allowedAccessControlHierarchyGroupId;
363 bool m_securityProfileNameHasBeenSet =
false;
364 bool m_descriptionHasBeenSet =
false;
365 bool m_permissionsHasBeenSet =
false;
366 bool m_instanceIdHasBeenSet =
false;
367 bool m_tagsHasBeenSet =
false;
368 bool m_allowedAccessControlTagsHasBeenSet =
false;
369 bool m_tagRestrictedResourcesHasBeenSet =
false;
370 bool m_applicationsHasBeenSet =
false;
371 bool m_hierarchyRestrictedResourcesHasBeenSet =
false;
372 bool m_allowedAccessControlHierarchyGroupIdHasBeenSet =
false;
373 bool m_allowedFlowModulesHasBeenSet =
false;
374 bool m_allowedAIAgentsHasBeenSet =
false;
375 bool m_granularAccessControlConfigurationHasBeenSet =
false;
CreateSecurityProfileRequest & AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT &&key, AllowedAccessControlTagsValueT &&value)
bool TagRestrictedResourcesHasBeenSet() const
const Aws::String & GetDescription() const
const Aws::String & GetAllowedAccessControlHierarchyGroupId() const
const Aws::Vector< AIAgent > & GetAllowedAIAgents() const
void SetApplications(ApplicationsT &&value)
bool AllowedAccessControlHierarchyGroupIdHasBeenSet() const
void SetAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
CreateSecurityProfileRequest & WithTags(TagsT &&value)
virtual const char * GetServiceRequestName() const override
const Aws::Vector< Aws::String > & GetHierarchyRestrictedResources() const
CreateSecurityProfileRequest & WithAllowedFlowModules(AllowedFlowModulesT &&value)
CreateSecurityProfileRequest & AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
void SetAllowedAIAgents(AllowedAIAgentsT &&value)
CreateSecurityProfileRequest & WithPermissions(PermissionsT &&value)
CreateSecurityProfileRequest & AddTags(TagsKeyT &&key, TagsValueT &&value)
CreateSecurityProfileRequest & AddAllowedFlowModules(AllowedFlowModulesT &&value)
const Aws::Vector< FlowModule > & GetAllowedFlowModules() const
CreateSecurityProfileRequest & AddPermissions(PermissionsT &&value)
CreateSecurityProfileRequest & WithSecurityProfileName(SecurityProfileNameT &&value)
bool SecurityProfileNameHasBeenSet() const
void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
CreateSecurityProfileRequest & WithTagRestrictedResources(TagRestrictedResourcesT &&value)
bool PermissionsHasBeenSet() const
CreateSecurityProfileRequest & WithAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
const Aws::String & GetInstanceId() const
bool AllowedFlowModulesHasBeenSet() const
CreateSecurityProfileRequest & WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
CreateSecurityProfileRequest & AddTagRestrictedResources(TagRestrictedResourcesT &&value)
AWS_CONNECT_API CreateSecurityProfileRequest()=default
const GranularAccessControlConfiguration & GetGranularAccessControlConfiguration() const
void SetInstanceId(InstanceIdT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAllowedAccessControlTags() const
CreateSecurityProfileRequest & AddAllowedAIAgents(AllowedAIAgentsT &&value)
void SetSecurityProfileName(SecurityProfileNameT &&value)
bool TagsHasBeenSet() const
void SetTagRestrictedResources(TagRestrictedResourcesT &&value)
void SetDescription(DescriptionT &&value)
bool HierarchyRestrictedResourcesHasBeenSet() const
CreateSecurityProfileRequest & WithApplications(ApplicationsT &&value)
CreateSecurityProfileRequest & AddApplications(ApplicationsT &&value)
void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
bool AllowedAIAgentsHasBeenSet() const
AWS_CONNECT_API Aws::String SerializePayload() const override
CreateSecurityProfileRequest & WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::String & GetSecurityProfileName() const
void SetTags(TagsT &&value)
const Aws::Vector< Aws::String > & GetPermissions() const
bool DescriptionHasBeenSet() const
bool AllowedAccessControlTagsHasBeenSet() const
const Aws::Map< Aws::String, Aws::String > & GetTags() const
CreateSecurityProfileRequest & WithInstanceId(InstanceIdT &&value)
void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::Vector< Application > & GetApplications() const
void SetPermissions(PermissionsT &&value)
CreateSecurityProfileRequest & WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
bool ApplicationsHasBeenSet() const
void SetAllowedFlowModules(AllowedFlowModulesT &&value)
bool InstanceIdHasBeenSet() const
bool GranularAccessControlConfigurationHasBeenSet() const
CreateSecurityProfileRequest & WithAllowedAIAgents(AllowedAIAgentsT &&value)
const Aws::Vector< Aws::String > & GetTagRestrictedResources() const
CreateSecurityProfileRequest & WithDescription(DescriptionT &&value)
std::map< K, V, std::less< K >, Aws::Allocator< std::pair< const K, V > > > Map
std::basic_string< char, std::char_traits< char >, Aws::Allocator< char > > String
std::vector< T, Aws::Allocator< T > > Vector