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/ds/DirectoryService_EXPORTS.h> 8 #include <aws/ds/DirectoryServiceRequest.h> 9 #include <aws/core/utils/memory/stl/AWSString.h> 10 #include <utility> 11 12 namespace Aws 13 { 14 namespace DirectoryService 15 { 16 namespace Model 17 { 18 19 /** 20 * <p>Contains the inputs for the <a>EnableSso</a> operation.</p><p><h3>See 21 * Also:</h3> <a 22 * href="http://docs.aws.amazon.com/goto/WebAPI/ds-2015-04-16/EnableSsoRequest">AWS 23 * API Reference</a></p> 24 */ 25 class AWS_DIRECTORYSERVICE_API EnableSsoRequest : public DirectoryServiceRequest 26 { 27 public: 28 EnableSsoRequest(); 29 30 // Service request name is the Operation name which will send this request out, 31 // each operation should has unique request name, so that we can get operation's name from this request. 32 // Note: this is not true for response, multiple operations may have the same response name, 33 // so we can not get operation's name from response. GetServiceRequestName()34 inline virtual const char* GetServiceRequestName() const override { return "EnableSso"; } 35 36 Aws::String SerializePayload() const override; 37 38 Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; 39 40 41 /** 42 * <p>The identifier of the directory for which to enable single-sign on.</p> 43 */ GetDirectoryId()44 inline const Aws::String& GetDirectoryId() const{ return m_directoryId; } 45 46 /** 47 * <p>The identifier of the directory for which to enable single-sign on.</p> 48 */ DirectoryIdHasBeenSet()49 inline bool DirectoryIdHasBeenSet() const { return m_directoryIdHasBeenSet; } 50 51 /** 52 * <p>The identifier of the directory for which to enable single-sign on.</p> 53 */ SetDirectoryId(const Aws::String & value)54 inline void SetDirectoryId(const Aws::String& value) { m_directoryIdHasBeenSet = true; m_directoryId = value; } 55 56 /** 57 * <p>The identifier of the directory for which to enable single-sign on.</p> 58 */ SetDirectoryId(Aws::String && value)59 inline void SetDirectoryId(Aws::String&& value) { m_directoryIdHasBeenSet = true; m_directoryId = std::move(value); } 60 61 /** 62 * <p>The identifier of the directory for which to enable single-sign on.</p> 63 */ SetDirectoryId(const char * value)64 inline void SetDirectoryId(const char* value) { m_directoryIdHasBeenSet = true; m_directoryId.assign(value); } 65 66 /** 67 * <p>The identifier of the directory for which to enable single-sign on.</p> 68 */ WithDirectoryId(const Aws::String & value)69 inline EnableSsoRequest& WithDirectoryId(const Aws::String& value) { SetDirectoryId(value); return *this;} 70 71 /** 72 * <p>The identifier of the directory for which to enable single-sign on.</p> 73 */ WithDirectoryId(Aws::String && value)74 inline EnableSsoRequest& WithDirectoryId(Aws::String&& value) { SetDirectoryId(std::move(value)); return *this;} 75 76 /** 77 * <p>The identifier of the directory for which to enable single-sign on.</p> 78 */ WithDirectoryId(const char * value)79 inline EnableSsoRequest& WithDirectoryId(const char* value) { SetDirectoryId(value); return *this;} 80 81 82 /** 83 * <p>The username of an alternate account to use to enable single-sign on. This is 84 * only used for AD Connector directories. This account must have privileges to add 85 * a service principal name.</p> <p>If the AD Connector service account does not 86 * have privileges to add a service principal name, you can specify an alternate 87 * account with the <i>UserName</i> and <i>Password</i> parameters. These 88 * credentials are only used to enable single sign-on and are not stored by the 89 * service. The AD Connector service account is not changed.</p> 90 */ GetUserName()91 inline const Aws::String& GetUserName() const{ return m_userName; } 92 93 /** 94 * <p>The username of an alternate account to use to enable single-sign on. This is 95 * only used for AD Connector directories. This account must have privileges to add 96 * a service principal name.</p> <p>If the AD Connector service account does not 97 * have privileges to add a service principal name, you can specify an alternate 98 * account with the <i>UserName</i> and <i>Password</i> parameters. These 99 * credentials are only used to enable single sign-on and are not stored by the 100 * service. The AD Connector service account is not changed.</p> 101 */ UserNameHasBeenSet()102 inline bool UserNameHasBeenSet() const { return m_userNameHasBeenSet; } 103 104 /** 105 * <p>The username of an alternate account to use to enable single-sign on. This is 106 * only used for AD Connector directories. This account must have privileges to add 107 * a service principal name.</p> <p>If the AD Connector service account does not 108 * have privileges to add a service principal name, you can specify an alternate 109 * account with the <i>UserName</i> and <i>Password</i> parameters. These 110 * credentials are only used to enable single sign-on and are not stored by the 111 * service. The AD Connector service account is not changed.</p> 112 */ SetUserName(const Aws::String & value)113 inline void SetUserName(const Aws::String& value) { m_userNameHasBeenSet = true; m_userName = value; } 114 115 /** 116 * <p>The username of an alternate account to use to enable single-sign on. This is 117 * only used for AD Connector directories. This account must have privileges to add 118 * a service principal name.</p> <p>If the AD Connector service account does not 119 * have privileges to add a service principal name, you can specify an alternate 120 * account with the <i>UserName</i> and <i>Password</i> parameters. These 121 * credentials are only used to enable single sign-on and are not stored by the 122 * service. The AD Connector service account is not changed.</p> 123 */ SetUserName(Aws::String && value)124 inline void SetUserName(Aws::String&& value) { m_userNameHasBeenSet = true; m_userName = std::move(value); } 125 126 /** 127 * <p>The username of an alternate account to use to enable single-sign on. This is 128 * only used for AD Connector directories. This account must have privileges to add 129 * a service principal name.</p> <p>If the AD Connector service account does not 130 * have privileges to add a service principal name, you can specify an alternate 131 * account with the <i>UserName</i> and <i>Password</i> parameters. These 132 * credentials are only used to enable single sign-on and are not stored by the 133 * service. The AD Connector service account is not changed.</p> 134 */ SetUserName(const char * value)135 inline void SetUserName(const char* value) { m_userNameHasBeenSet = true; m_userName.assign(value); } 136 137 /** 138 * <p>The username of an alternate account to use to enable single-sign on. This is 139 * only used for AD Connector directories. This account must have privileges to add 140 * a service principal name.</p> <p>If the AD Connector service account does not 141 * have privileges to add a service principal name, you can specify an alternate 142 * account with the <i>UserName</i> and <i>Password</i> parameters. These 143 * credentials are only used to enable single sign-on and are not stored by the 144 * service. The AD Connector service account is not changed.</p> 145 */ WithUserName(const Aws::String & value)146 inline EnableSsoRequest& WithUserName(const Aws::String& value) { SetUserName(value); return *this;} 147 148 /** 149 * <p>The username of an alternate account to use to enable single-sign on. This is 150 * only used for AD Connector directories. This account must have privileges to add 151 * a service principal name.</p> <p>If the AD Connector service account does not 152 * have privileges to add a service principal name, you can specify an alternate 153 * account with the <i>UserName</i> and <i>Password</i> parameters. These 154 * credentials are only used to enable single sign-on and are not stored by the 155 * service. The AD Connector service account is not changed.</p> 156 */ WithUserName(Aws::String && value)157 inline EnableSsoRequest& WithUserName(Aws::String&& value) { SetUserName(std::move(value)); return *this;} 158 159 /** 160 * <p>The username of an alternate account to use to enable single-sign on. This is 161 * only used for AD Connector directories. This account must have privileges to add 162 * a service principal name.</p> <p>If the AD Connector service account does not 163 * have privileges to add a service principal name, you can specify an alternate 164 * account with the <i>UserName</i> and <i>Password</i> parameters. These 165 * credentials are only used to enable single sign-on and are not stored by the 166 * service. The AD Connector service account is not changed.</p> 167 */ WithUserName(const char * value)168 inline EnableSsoRequest& WithUserName(const char* value) { SetUserName(value); return *this;} 169 170 171 /** 172 * <p>The password of an alternate account to use to enable single-sign on. This is 173 * only used for AD Connector directories. For more information, see the 174 * <i>UserName</i> parameter.</p> 175 */ GetPassword()176 inline const Aws::String& GetPassword() const{ return m_password; } 177 178 /** 179 * <p>The password of an alternate account to use to enable single-sign on. This is 180 * only used for AD Connector directories. For more information, see the 181 * <i>UserName</i> parameter.</p> 182 */ PasswordHasBeenSet()183 inline bool PasswordHasBeenSet() const { return m_passwordHasBeenSet; } 184 185 /** 186 * <p>The password of an alternate account to use to enable single-sign on. This is 187 * only used for AD Connector directories. For more information, see the 188 * <i>UserName</i> parameter.</p> 189 */ SetPassword(const Aws::String & value)190 inline void SetPassword(const Aws::String& value) { m_passwordHasBeenSet = true; m_password = value; } 191 192 /** 193 * <p>The password of an alternate account to use to enable single-sign on. This is 194 * only used for AD Connector directories. For more information, see the 195 * <i>UserName</i> parameter.</p> 196 */ SetPassword(Aws::String && value)197 inline void SetPassword(Aws::String&& value) { m_passwordHasBeenSet = true; m_password = std::move(value); } 198 199 /** 200 * <p>The password of an alternate account to use to enable single-sign on. This is 201 * only used for AD Connector directories. For more information, see the 202 * <i>UserName</i> parameter.</p> 203 */ SetPassword(const char * value)204 inline void SetPassword(const char* value) { m_passwordHasBeenSet = true; m_password.assign(value); } 205 206 /** 207 * <p>The password of an alternate account to use to enable single-sign on. This is 208 * only used for AD Connector directories. For more information, see the 209 * <i>UserName</i> parameter.</p> 210 */ WithPassword(const Aws::String & value)211 inline EnableSsoRequest& WithPassword(const Aws::String& value) { SetPassword(value); return *this;} 212 213 /** 214 * <p>The password of an alternate account to use to enable single-sign on. This is 215 * only used for AD Connector directories. For more information, see the 216 * <i>UserName</i> parameter.</p> 217 */ WithPassword(Aws::String && value)218 inline EnableSsoRequest& WithPassword(Aws::String&& value) { SetPassword(std::move(value)); return *this;} 219 220 /** 221 * <p>The password of an alternate account to use to enable single-sign on. This is 222 * only used for AD Connector directories. For more information, see the 223 * <i>UserName</i> parameter.</p> 224 */ WithPassword(const char * value)225 inline EnableSsoRequest& WithPassword(const char* value) { SetPassword(value); return *this;} 226 227 private: 228 229 Aws::String m_directoryId; 230 bool m_directoryIdHasBeenSet; 231 232 Aws::String m_userName; 233 bool m_userNameHasBeenSet; 234 235 Aws::String m_password; 236 bool m_passwordHasBeenSet; 237 }; 238 239 } // namespace Model 240 } // namespace DirectoryService 241 } // namespace Aws 242