1 /** 2 * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 3 * SPDX-License-Identifier: Apache-2.0. 4 */ 5 6 #pragma once 7 #include <aws/sts/STS_EXPORTS.h> 8 #include <aws/core/utils/memory/stl/AWSStreamFwd.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace Utils 15 { 16 namespace Xml 17 { 18 class XmlNode; 19 } // namespace Xml 20 } // namespace Utils 21 namespace STS 22 { 23 namespace Model 24 { 25 26 /** 27 * <p>Identifiers for the federated user that is associated with the 28 * credentials.</p><p><h3>See Also:</h3> <a 29 * href="http://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15/FederatedUser">AWS 30 * API Reference</a></p> 31 */ 32 class AWS_STS_API FederatedUser 33 { 34 public: 35 FederatedUser(); 36 FederatedUser(const Aws::Utils::Xml::XmlNode& xmlNode); 37 FederatedUser& operator=(const Aws::Utils::Xml::XmlNode& xmlNode); 38 39 void OutputToStream(Aws::OStream& ostream, const char* location, unsigned index, const char* locationValue) const; 40 void OutputToStream(Aws::OStream& oStream, const char* location) const; 41 42 43 /** 44 * <p>The string that identifies the federated user associated with the 45 * credentials, similar to the unique ID of an IAM user.</p> 46 */ GetFederatedUserId()47 inline const Aws::String& GetFederatedUserId() const{ return m_federatedUserId; } 48 49 /** 50 * <p>The string that identifies the federated user associated with the 51 * credentials, similar to the unique ID of an IAM user.</p> 52 */ FederatedUserIdHasBeenSet()53 inline bool FederatedUserIdHasBeenSet() const { return m_federatedUserIdHasBeenSet; } 54 55 /** 56 * <p>The string that identifies the federated user associated with the 57 * credentials, similar to the unique ID of an IAM user.</p> 58 */ SetFederatedUserId(const Aws::String & value)59 inline void SetFederatedUserId(const Aws::String& value) { m_federatedUserIdHasBeenSet = true; m_federatedUserId = value; } 60 61 /** 62 * <p>The string that identifies the federated user associated with the 63 * credentials, similar to the unique ID of an IAM user.</p> 64 */ SetFederatedUserId(Aws::String && value)65 inline void SetFederatedUserId(Aws::String&& value) { m_federatedUserIdHasBeenSet = true; m_federatedUserId = std::move(value); } 66 67 /** 68 * <p>The string that identifies the federated user associated with the 69 * credentials, similar to the unique ID of an IAM user.</p> 70 */ SetFederatedUserId(const char * value)71 inline void SetFederatedUserId(const char* value) { m_federatedUserIdHasBeenSet = true; m_federatedUserId.assign(value); } 72 73 /** 74 * <p>The string that identifies the federated user associated with the 75 * credentials, similar to the unique ID of an IAM user.</p> 76 */ WithFederatedUserId(const Aws::String & value)77 inline FederatedUser& WithFederatedUserId(const Aws::String& value) { SetFederatedUserId(value); return *this;} 78 79 /** 80 * <p>The string that identifies the federated user associated with the 81 * credentials, similar to the unique ID of an IAM user.</p> 82 */ WithFederatedUserId(Aws::String && value)83 inline FederatedUser& WithFederatedUserId(Aws::String&& value) { SetFederatedUserId(std::move(value)); return *this;} 84 85 /** 86 * <p>The string that identifies the federated user associated with the 87 * credentials, similar to the unique ID of an IAM user.</p> 88 */ WithFederatedUserId(const char * value)89 inline FederatedUser& WithFederatedUserId(const char* value) { SetFederatedUserId(value); return *this;} 90 91 92 /** 93 * <p>The ARN that specifies the federated user that is associated with the 94 * credentials. For more information about ARNs and how to use them in policies, 95 * see <a 96 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 97 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 98 */ GetArn()99 inline const Aws::String& GetArn() const{ return m_arn; } 100 101 /** 102 * <p>The ARN that specifies the federated user that is associated with the 103 * credentials. For more information about ARNs and how to use them in policies, 104 * see <a 105 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 106 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 107 */ ArnHasBeenSet()108 inline bool ArnHasBeenSet() const { return m_arnHasBeenSet; } 109 110 /** 111 * <p>The ARN that specifies the federated user that is associated with the 112 * credentials. For more information about ARNs and how to use them in policies, 113 * see <a 114 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 115 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 116 */ SetArn(const Aws::String & value)117 inline void SetArn(const Aws::String& value) { m_arnHasBeenSet = true; m_arn = value; } 118 119 /** 120 * <p>The ARN that specifies the federated user that is associated with the 121 * credentials. For more information about ARNs and how to use them in policies, 122 * see <a 123 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 124 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 125 */ SetArn(Aws::String && value)126 inline void SetArn(Aws::String&& value) { m_arnHasBeenSet = true; m_arn = std::move(value); } 127 128 /** 129 * <p>The ARN that specifies the federated user that is associated with the 130 * credentials. For more information about ARNs and how to use them in policies, 131 * see <a 132 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 133 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 134 */ SetArn(const char * value)135 inline void SetArn(const char* value) { m_arnHasBeenSet = true; m_arn.assign(value); } 136 137 /** 138 * <p>The ARN that specifies the federated user that is associated with the 139 * credentials. For more information about ARNs and how to use them in policies, 140 * see <a 141 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 142 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 143 */ WithArn(const Aws::String & value)144 inline FederatedUser& WithArn(const Aws::String& value) { SetArn(value); return *this;} 145 146 /** 147 * <p>The ARN that specifies the federated user that is associated with the 148 * credentials. For more information about ARNs and how to use them in policies, 149 * see <a 150 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 151 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 152 */ WithArn(Aws::String && value)153 inline FederatedUser& WithArn(Aws::String&& value) { SetArn(std::move(value)); return *this;} 154 155 /** 156 * <p>The ARN that specifies the federated user that is associated with the 157 * credentials. For more information about ARNs and how to use them in policies, 158 * see <a 159 * href="https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html">IAM 160 * Identifiers</a> in the <i>IAM User Guide</i>. </p> 161 */ WithArn(const char * value)162 inline FederatedUser& WithArn(const char* value) { SetArn(value); return *this;} 163 164 private: 165 166 Aws::String m_federatedUserId; 167 bool m_federatedUserIdHasBeenSet; 168 169 Aws::String m_arn; 170 bool m_arnHasBeenSet; 171 }; 172 173 } // namespace Model 174 } // namespace STS 175 } // namespace Aws 176