AWS SDK for C++

AWS SDK for C++ Version 1.11.744

Loading...
Searching...
No Matches
UpdateSecurityProfileRequest.h
1
6#pragma once
7#include <aws/connect/ConnectRequest.h>
8#include <aws/connect/Connect_EXPORTS.h>
9#include <aws/connect/model/Application.h>
10#include <aws/connect/model/FlowModule.h>
11#include <aws/connect/model/GranularAccessControlConfiguration.h>
12#include <aws/core/utils/memory/stl/AWSMap.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/core/utils/memory/stl/AWSVector.h>
15
16#include <utility>
17
18namespace Aws {
19namespace Connect {
20namespace Model {
21
25 public:
26 AWS_CONNECT_API UpdateSecurityProfileRequest() = default;
27
28 // Service request name is the Operation name which will send this request out,
29 // each operation should has unique request name, so that we can get operation's name from this request.
30 // Note: this is not true for response, multiple operations may have the same response name,
31 // so we can not get operation's name from response.
32 inline virtual const char* GetServiceRequestName() const override { return "UpdateSecurityProfile"; }
33
34 AWS_CONNECT_API Aws::String SerializePayload() const override;
35
37
40 inline const Aws::String& GetDescription() const { return m_description; }
41 inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
42 template <typename DescriptionT = Aws::String>
43 void SetDescription(DescriptionT&& value) {
44 m_descriptionHasBeenSet = true;
45 m_description = std::forward<DescriptionT>(value);
46 }
47 template <typename DescriptionT = Aws::String>
49 SetDescription(std::forward<DescriptionT>(value));
50 return *this;
51 }
53
55
61 inline const Aws::Vector<Aws::String>& GetPermissions() const { return m_permissions; }
62 inline bool PermissionsHasBeenSet() const { return m_permissionsHasBeenSet; }
63 template <typename PermissionsT = Aws::Vector<Aws::String>>
64 void SetPermissions(PermissionsT&& value) {
65 m_permissionsHasBeenSet = true;
66 m_permissions = std::forward<PermissionsT>(value);
67 }
68 template <typename PermissionsT = Aws::Vector<Aws::String>>
70 SetPermissions(std::forward<PermissionsT>(value));
71 return *this;
72 }
73 template <typename PermissionsT = Aws::String>
75 m_permissionsHasBeenSet = true;
76 m_permissions.emplace_back(std::forward<PermissionsT>(value));
77 return *this;
78 }
80
82
85 inline const Aws::String& GetSecurityProfileId() const { return m_securityProfileId; }
86 inline bool SecurityProfileIdHasBeenSet() const { return m_securityProfileIdHasBeenSet; }
87 template <typename SecurityProfileIdT = Aws::String>
88 void SetSecurityProfileId(SecurityProfileIdT&& value) {
89 m_securityProfileIdHasBeenSet = true;
90 m_securityProfileId = std::forward<SecurityProfileIdT>(value);
91 }
92 template <typename SecurityProfileIdT = Aws::String>
94 SetSecurityProfileId(std::forward<SecurityProfileIdT>(value));
95 return *this;
96 }
98
100
105 inline const Aws::String& GetInstanceId() const { return m_instanceId; }
106 inline bool InstanceIdHasBeenSet() const { return m_instanceIdHasBeenSet; }
107 template <typename InstanceIdT = Aws::String>
108 void SetInstanceId(InstanceIdT&& value) {
109 m_instanceIdHasBeenSet = true;
110 m_instanceId = std::forward<InstanceIdT>(value);
111 }
112 template <typename InstanceIdT = Aws::String>
114 SetInstanceId(std::forward<InstanceIdT>(value));
115 return *this;
116 }
118
120
124 inline const Aws::Map<Aws::String, Aws::String>& GetAllowedAccessControlTags() const { return m_allowedAccessControlTags; }
125 inline bool AllowedAccessControlTagsHasBeenSet() const { return m_allowedAccessControlTagsHasBeenSet; }
126 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
127 void SetAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
128 m_allowedAccessControlTagsHasBeenSet = true;
129 m_allowedAccessControlTags = std::forward<AllowedAccessControlTagsT>(value);
130 }
131 template <typename AllowedAccessControlTagsT = Aws::Map<Aws::String, Aws::String>>
132 UpdateSecurityProfileRequest& WithAllowedAccessControlTags(AllowedAccessControlTagsT&& value) {
133 SetAllowedAccessControlTags(std::forward<AllowedAccessControlTagsT>(value));
134 return *this;
135 }
136 template <typename AllowedAccessControlTagsKeyT = Aws::String, typename AllowedAccessControlTagsValueT = Aws::String>
137 UpdateSecurityProfileRequest& AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT&& key, AllowedAccessControlTagsValueT&& value) {
138 m_allowedAccessControlTagsHasBeenSet = true;
139 m_allowedAccessControlTags.emplace(std::forward<AllowedAccessControlTagsKeyT>(key),
140 std::forward<AllowedAccessControlTagsValueT>(value));
141 return *this;
142 }
144
146
150 inline const Aws::Vector<Aws::String>& GetTagRestrictedResources() const { return m_tagRestrictedResources; }
151 inline bool TagRestrictedResourcesHasBeenSet() const { return m_tagRestrictedResourcesHasBeenSet; }
152 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
153 void SetTagRestrictedResources(TagRestrictedResourcesT&& value) {
154 m_tagRestrictedResourcesHasBeenSet = true;
155 m_tagRestrictedResources = std::forward<TagRestrictedResourcesT>(value);
156 }
157 template <typename TagRestrictedResourcesT = Aws::Vector<Aws::String>>
159 SetTagRestrictedResources(std::forward<TagRestrictedResourcesT>(value));
160 return *this;
161 }
162 template <typename TagRestrictedResourcesT = Aws::String>
163 UpdateSecurityProfileRequest& AddTagRestrictedResources(TagRestrictedResourcesT&& value) {
164 m_tagRestrictedResourcesHasBeenSet = true;
165 m_tagRestrictedResources.emplace_back(std::forward<TagRestrictedResourcesT>(value));
166 return *this;
167 }
169
171
174 inline const Aws::Vector<Application>& GetApplications() const { return m_applications; }
175 inline bool ApplicationsHasBeenSet() const { return m_applicationsHasBeenSet; }
176 template <typename ApplicationsT = Aws::Vector<Application>>
177 void SetApplications(ApplicationsT&& value) {
178 m_applicationsHasBeenSet = true;
179 m_applications = std::forward<ApplicationsT>(value);
180 }
181 template <typename ApplicationsT = Aws::Vector<Application>>
183 SetApplications(std::forward<ApplicationsT>(value));
184 return *this;
185 }
186 template <typename ApplicationsT = Application>
188 m_applicationsHasBeenSet = true;
189 m_applications.emplace_back(std::forward<ApplicationsT>(value));
190 return *this;
191 }
193
195
200 inline const Aws::Vector<Aws::String>& GetHierarchyRestrictedResources() const { return m_hierarchyRestrictedResources; }
201 inline bool HierarchyRestrictedResourcesHasBeenSet() const { return m_hierarchyRestrictedResourcesHasBeenSet; }
202 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
203 void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
204 m_hierarchyRestrictedResourcesHasBeenSet = true;
205 m_hierarchyRestrictedResources = std::forward<HierarchyRestrictedResourcesT>(value);
206 }
207 template <typename HierarchyRestrictedResourcesT = Aws::Vector<Aws::String>>
208 UpdateSecurityProfileRequest& WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
209 SetHierarchyRestrictedResources(std::forward<HierarchyRestrictedResourcesT>(value));
210 return *this;
211 }
212 template <typename HierarchyRestrictedResourcesT = Aws::String>
213 UpdateSecurityProfileRequest& AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT&& value) {
214 m_hierarchyRestrictedResourcesHasBeenSet = true;
215 m_hierarchyRestrictedResources.emplace_back(std::forward<HierarchyRestrictedResourcesT>(value));
216 return *this;
217 }
219
221
225 inline const Aws::String& GetAllowedAccessControlHierarchyGroupId() const { return m_allowedAccessControlHierarchyGroupId; }
226 inline bool AllowedAccessControlHierarchyGroupIdHasBeenSet() const { return m_allowedAccessControlHierarchyGroupIdHasBeenSet; }
227 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
228 void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
229 m_allowedAccessControlHierarchyGroupIdHasBeenSet = true;
230 m_allowedAccessControlHierarchyGroupId = std::forward<AllowedAccessControlHierarchyGroupIdT>(value);
231 }
232 template <typename AllowedAccessControlHierarchyGroupIdT = Aws::String>
233 UpdateSecurityProfileRequest& WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT&& value) {
234 SetAllowedAccessControlHierarchyGroupId(std::forward<AllowedAccessControlHierarchyGroupIdT>(value));
235 return *this;
236 }
238
240
243 inline const Aws::Vector<FlowModule>& GetAllowedFlowModules() const { return m_allowedFlowModules; }
244 inline bool AllowedFlowModulesHasBeenSet() const { return m_allowedFlowModulesHasBeenSet; }
245 template <typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
246 void SetAllowedFlowModules(AllowedFlowModulesT&& value) {
247 m_allowedFlowModulesHasBeenSet = true;
248 m_allowedFlowModules = std::forward<AllowedFlowModulesT>(value);
249 }
250 template <typename AllowedFlowModulesT = Aws::Vector<FlowModule>>
252 SetAllowedFlowModules(std::forward<AllowedFlowModulesT>(value));
253 return *this;
254 }
255 template <typename AllowedFlowModulesT = FlowModule>
257 m_allowedFlowModulesHasBeenSet = true;
258 m_allowedFlowModules.emplace_back(std::forward<AllowedFlowModulesT>(value));
259 return *this;
260 }
262
264
269 return m_granularAccessControlConfiguration;
270 }
271 inline bool GranularAccessControlConfigurationHasBeenSet() const { return m_granularAccessControlConfigurationHasBeenSet; }
272 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
273 void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
274 m_granularAccessControlConfigurationHasBeenSet = true;
275 m_granularAccessControlConfiguration = std::forward<GranularAccessControlConfigurationT>(value);
276 }
277 template <typename GranularAccessControlConfigurationT = GranularAccessControlConfiguration>
278 UpdateSecurityProfileRequest& WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT&& value) {
279 SetGranularAccessControlConfiguration(std::forward<GranularAccessControlConfigurationT>(value));
280 return *this;
281 }
283 private:
284 Aws::String m_description;
285
286 Aws::Vector<Aws::String> m_permissions;
287
288 Aws::String m_securityProfileId;
289
290 Aws::String m_instanceId;
291
292 Aws::Map<Aws::String, Aws::String> m_allowedAccessControlTags;
293
294 Aws::Vector<Aws::String> m_tagRestrictedResources;
295
296 Aws::Vector<Application> m_applications;
297
298 Aws::Vector<Aws::String> m_hierarchyRestrictedResources;
299
300 Aws::String m_allowedAccessControlHierarchyGroupId;
301
302 Aws::Vector<FlowModule> m_allowedFlowModules;
303
304 GranularAccessControlConfiguration m_granularAccessControlConfiguration;
305 bool m_descriptionHasBeenSet = false;
306 bool m_permissionsHasBeenSet = false;
307 bool m_securityProfileIdHasBeenSet = false;
308 bool m_instanceIdHasBeenSet = false;
309 bool m_allowedAccessControlTagsHasBeenSet = false;
310 bool m_tagRestrictedResourcesHasBeenSet = false;
311 bool m_applicationsHasBeenSet = false;
312 bool m_hierarchyRestrictedResourcesHasBeenSet = false;
313 bool m_allowedAccessControlHierarchyGroupIdHasBeenSet = false;
314 bool m_allowedFlowModulesHasBeenSet = false;
315 bool m_granularAccessControlConfigurationHasBeenSet = false;
316};
317
318} // namespace Model
319} // namespace Connect
320} // namespace Aws
UpdateSecurityProfileRequest & WithPermissions(PermissionsT &&value)
UpdateSecurityProfileRequest & WithGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
UpdateSecurityProfileRequest & WithTagRestrictedResources(TagRestrictedResourcesT &&value)
AWS_CONNECT_API UpdateSecurityProfileRequest()=default
void SetAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
const GranularAccessControlConfiguration & GetGranularAccessControlConfiguration() const
UpdateSecurityProfileRequest & AddApplications(ApplicationsT &&value)
const Aws::Map< Aws::String, Aws::String > & GetAllowedAccessControlTags() const
UpdateSecurityProfileRequest & WithApplications(ApplicationsT &&value)
UpdateSecurityProfileRequest & AddTagRestrictedResources(TagRestrictedResourcesT &&value)
void SetHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
UpdateSecurityProfileRequest & WithHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&value)
const Aws::Vector< FlowModule > & GetAllowedFlowModules() const
void SetGranularAccessControlConfiguration(GranularAccessControlConfigurationT &&value)
UpdateSecurityProfileRequest & WithAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
const Aws::Vector< Application > & GetApplications() const
UpdateSecurityProfileRequest & WithAllowedFlowModules(AllowedFlowModulesT &&value)
UpdateSecurityProfileRequest & WithDescription(DescriptionT &&value)
UpdateSecurityProfileRequest & AddPermissions(PermissionsT &&value)
const Aws::Vector< Aws::String > & GetHierarchyRestrictedResources() const
virtual const char * GetServiceRequestName() const override
UpdateSecurityProfileRequest & AddAllowedFlowModules(AllowedFlowModulesT &&value)
AWS_CONNECT_API Aws::String SerializePayload() const override
UpdateSecurityProfileRequest & WithSecurityProfileId(SecurityProfileIdT &&value)
const Aws::Vector< Aws::String > & GetPermissions() const
void SetTagRestrictedResources(TagRestrictedResourcesT &&value)
const Aws::Vector< Aws::String > & GetTagRestrictedResources() const
void SetAllowedAccessControlHierarchyGroupId(AllowedAccessControlHierarchyGroupIdT &&value)
UpdateSecurityProfileRequest & AddAllowedAccessControlTags(AllowedAccessControlTagsKeyT &&key, AllowedAccessControlTagsValueT &&value)
UpdateSecurityProfileRequest & WithInstanceId(InstanceIdT &&value)
UpdateSecurityProfileRequest & WithAllowedAccessControlTags(AllowedAccessControlTagsT &&value)
UpdateSecurityProfileRequest & AddHierarchyRestrictedResources(HierarchyRestrictedResourcesT &&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