/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
* SPDX-License-Identifier: Apache-2.0.
*/
#pragma once
#include Information about an IAM user.See Also:
AWS
* API Reference
A list of the managed policies that are attached to the user.
*/ inline const Aws::VectorA list of the managed policies that are attached to the user.
*/ inline bool AttachedManagedPoliciesHasBeenSet() const { return m_attachedManagedPoliciesHasBeenSet; } /** *A list of the managed policies that are attached to the user.
*/ inline void SetAttachedManagedPolicies(const Aws::VectorA list of the managed policies that are attached to the user.
*/ inline void SetAttachedManagedPolicies(Aws::VectorA list of the managed policies that are attached to the user.
*/ inline AwsIamUserDetails& WithAttachedManagedPolicies(const Aws::VectorA list of the managed policies that are attached to the user.
*/ inline AwsIamUserDetails& WithAttachedManagedPolicies(Aws::VectorA list of the managed policies that are attached to the user.
*/ inline AwsIamUserDetails& AddAttachedManagedPolicies(const AwsIamAttachedManagedPolicy& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies.push_back(value); return *this; } /** *A list of the managed policies that are attached to the user.
*/ inline AwsIamUserDetails& AddAttachedManagedPolicies(AwsIamAttachedManagedPolicy&& value) { m_attachedManagedPoliciesHasBeenSet = true; m_attachedManagedPolicies.push_back(std::move(value)); return *this; } /** *Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
Indicates when the user was created.
Uses the date-time
* format specified in RFC 3339 section 5.6,
* Internet Date/Time Format. The value cannot contain spaces, and date and
* time should be separated by T
. For example,
* 2020-03-22T13:22:13.933Z
.
A list of IAM groups that the user belongs to.
*/ inline const Aws::VectorA list of IAM groups that the user belongs to.
*/ inline bool GroupListHasBeenSet() const { return m_groupListHasBeenSet; } /** *A list of IAM groups that the user belongs to.
*/ inline void SetGroupList(const Aws::VectorA list of IAM groups that the user belongs to.
*/ inline void SetGroupList(Aws::VectorA list of IAM groups that the user belongs to.
*/ inline AwsIamUserDetails& WithGroupList(const Aws::VectorA list of IAM groups that the user belongs to.
*/ inline AwsIamUserDetails& WithGroupList(Aws::VectorA list of IAM groups that the user belongs to.
*/ inline AwsIamUserDetails& AddGroupList(const Aws::String& value) { m_groupListHasBeenSet = true; m_groupList.push_back(value); return *this; } /** *A list of IAM groups that the user belongs to.
*/ inline AwsIamUserDetails& AddGroupList(Aws::String&& value) { m_groupListHasBeenSet = true; m_groupList.push_back(std::move(value)); return *this; } /** *A list of IAM groups that the user belongs to.
*/ inline AwsIamUserDetails& AddGroupList(const char* value) { m_groupListHasBeenSet = true; m_groupList.push_back(value); return *this; } /** *The path to the user.
*/ inline const Aws::String& GetPath() const{ return m_path; } /** *The path to the user.
*/ inline bool PathHasBeenSet() const { return m_pathHasBeenSet; } /** *The path to the user.
*/ inline void SetPath(const Aws::String& value) { m_pathHasBeenSet = true; m_path = value; } /** *The path to the user.
*/ inline void SetPath(Aws::String&& value) { m_pathHasBeenSet = true; m_path = std::move(value); } /** *The path to the user.
*/ inline void SetPath(const char* value) { m_pathHasBeenSet = true; m_path.assign(value); } /** *The path to the user.
*/ inline AwsIamUserDetails& WithPath(const Aws::String& value) { SetPath(value); return *this;} /** *The path to the user.
*/ inline AwsIamUserDetails& WithPath(Aws::String&& value) { SetPath(std::move(value)); return *this;} /** *The path to the user.
*/ inline AwsIamUserDetails& WithPath(const char* value) { SetPath(value); return *this;} /** *The permissions boundary for the user.
*/ inline const AwsIamPermissionsBoundary& GetPermissionsBoundary() const{ return m_permissionsBoundary; } /** *The permissions boundary for the user.
*/ inline bool PermissionsBoundaryHasBeenSet() const { return m_permissionsBoundaryHasBeenSet; } /** *The permissions boundary for the user.
*/ inline void SetPermissionsBoundary(const AwsIamPermissionsBoundary& value) { m_permissionsBoundaryHasBeenSet = true; m_permissionsBoundary = value; } /** *The permissions boundary for the user.
*/ inline void SetPermissionsBoundary(AwsIamPermissionsBoundary&& value) { m_permissionsBoundaryHasBeenSet = true; m_permissionsBoundary = std::move(value); } /** *The permissions boundary for the user.
*/ inline AwsIamUserDetails& WithPermissionsBoundary(const AwsIamPermissionsBoundary& value) { SetPermissionsBoundary(value); return *this;} /** *The permissions boundary for the user.
*/ inline AwsIamUserDetails& WithPermissionsBoundary(AwsIamPermissionsBoundary&& value) { SetPermissionsBoundary(std::move(value)); return *this;} /** *The unique identifier for the user.
*/ inline const Aws::String& GetUserId() const{ return m_userId; } /** *The unique identifier for the user.
*/ inline bool UserIdHasBeenSet() const { return m_userIdHasBeenSet; } /** *The unique identifier for the user.
*/ inline void SetUserId(const Aws::String& value) { m_userIdHasBeenSet = true; m_userId = value; } /** *The unique identifier for the user.
*/ inline void SetUserId(Aws::String&& value) { m_userIdHasBeenSet = true; m_userId = std::move(value); } /** *The unique identifier for the user.
*/ inline void SetUserId(const char* value) { m_userIdHasBeenSet = true; m_userId.assign(value); } /** *The unique identifier for the user.
*/ inline AwsIamUserDetails& WithUserId(const Aws::String& value) { SetUserId(value); return *this;} /** *The unique identifier for the user.
*/ inline AwsIamUserDetails& WithUserId(Aws::String&& value) { SetUserId(std::move(value)); return *this;} /** *The unique identifier for the user.
*/ inline AwsIamUserDetails& WithUserId(const char* value) { SetUserId(value); return *this;} /** *The name of the user.
*/ inline const Aws::String& GetUserName() const{ return m_userName; } /** *The name of the user.
*/ inline bool UserNameHasBeenSet() const { return m_userNameHasBeenSet; } /** *The name of the user.
*/ inline void SetUserName(const Aws::String& value) { m_userNameHasBeenSet = true; m_userName = value; } /** *The name of the user.
*/ inline void SetUserName(Aws::String&& value) { m_userNameHasBeenSet = true; m_userName = std::move(value); } /** *The name of the user.
*/ inline void SetUserName(const char* value) { m_userNameHasBeenSet = true; m_userName.assign(value); } /** *The name of the user.
*/ inline AwsIamUserDetails& WithUserName(const Aws::String& value) { SetUserName(value); return *this;} /** *The name of the user.
*/ inline AwsIamUserDetails& WithUserName(Aws::String&& value) { SetUserName(std::move(value)); return *this;} /** *The name of the user.
*/ inline AwsIamUserDetails& WithUserName(const char* value) { SetUserName(value); return *this;} /** *The list of inline policies that are embedded in the user.
*/ inline const Aws::VectorThe list of inline policies that are embedded in the user.
*/ inline bool UserPolicyListHasBeenSet() const { return m_userPolicyListHasBeenSet; } /** *The list of inline policies that are embedded in the user.
*/ inline void SetUserPolicyList(const Aws::VectorThe list of inline policies that are embedded in the user.
*/ inline void SetUserPolicyList(Aws::VectorThe list of inline policies that are embedded in the user.
*/ inline AwsIamUserDetails& WithUserPolicyList(const Aws::VectorThe list of inline policies that are embedded in the user.
*/ inline AwsIamUserDetails& WithUserPolicyList(Aws::VectorThe list of inline policies that are embedded in the user.
*/ inline AwsIamUserDetails& AddUserPolicyList(const AwsIamUserPolicy& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList.push_back(value); return *this; } /** *The list of inline policies that are embedded in the user.
*/ inline AwsIamUserDetails& AddUserPolicyList(AwsIamUserPolicy&& value) { m_userPolicyListHasBeenSet = true; m_userPolicyList.push_back(std::move(value)); return *this; } private: Aws::Vector