/*
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License").
* You may not use this file except in compliance with the License.
* A copy of the License is located at
*
* http://aws.amazon.com/apache2.0
*
* or in the "license" file accompanying this file. This file is distributed
* on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either
* express or implied. See the License for the specific language governing
* permissions and limitations under the License.
*/
/*
* Do not modify this file. This file is generated from the iam-2010-05-08.normal.json service model.
*/
using System;
using System.Collections.Generic;
using System.Xml.Serialization;
using System.Text;
using System.IO;
using System.Net;
using Amazon.Runtime;
using Amazon.Runtime.Internal;
namespace Amazon.IdentityManagement.Model
{
///
/// Container for the parameters to the EnableMFADevice operation.
/// Enables the specified MFA device and associates it with the specified IAM user. When
/// enabled, the MFA device is required for every subsequent login by the IAM user associated
/// with the device.
///
public partial class EnableMFADeviceRequest : AmazonIdentityManagementServiceRequest
{
private string _authenticationCode1;
private string _authenticationCode2;
private string _serialNumber;
private string _userName;
///
/// Gets and sets the property AuthenticationCode1.
///
/// An authentication code emitted by the device.
///
///
///
/// The format for this parameter is a string of six digits.
///
///
///
/// Submit your request immediately after generating the authentication codes. If you
/// generate the codes and then wait too long to submit the request, the MFA device successfully
/// associates with the user but the MFA device becomes out of sync. This happens because
/// time-based one-time passwords (TOTP) expire after a short period of time. If this
/// happens, you can resync
/// the device.
///
///
///
[AWSProperty(Required=true, Min=6, Max=6)]
public string AuthenticationCode1
{
get { return this._authenticationCode1; }
set { this._authenticationCode1 = value; }
}
// Check to see if AuthenticationCode1 property is set
internal bool IsSetAuthenticationCode1()
{
return this._authenticationCode1 != null;
}
///
/// Gets and sets the property AuthenticationCode2.
///
/// A subsequent authentication code emitted by the device.
///
///
///
/// The format for this parameter is a string of six digits.
///
///
///
/// Submit your request immediately after generating the authentication codes. If you
/// generate the codes and then wait too long to submit the request, the MFA device successfully
/// associates with the user but the MFA device becomes out of sync. This happens because
/// time-based one-time passwords (TOTP) expire after a short period of time. If this
/// happens, you can resync
/// the device.
///
///
///
[AWSProperty(Required=true, Min=6, Max=6)]
public string AuthenticationCode2
{
get { return this._authenticationCode2; }
set { this._authenticationCode2 = value; }
}
// Check to see if AuthenticationCode2 property is set
internal bool IsSetAuthenticationCode2()
{
return this._authenticationCode2 != null;
}
///
/// Gets and sets the property SerialNumber.
///
/// The serial number that uniquely identifies the MFA device. For virtual MFA devices,
/// the serial number is the device ARN.
///
///
///
/// This parameter allows (through its regex
/// pattern) a string of characters consisting of upper and lowercase alphanumeric
/// characters with no spaces. You can also include any of the following characters: =,.@:/-
///
///
[AWSProperty(Required=true, Min=9, Max=256)]
public string SerialNumber
{
get { return this._serialNumber; }
set { this._serialNumber = value; }
}
// Check to see if SerialNumber property is set
internal bool IsSetSerialNumber()
{
return this._serialNumber != null;
}
///
/// Gets and sets the property UserName.
///
/// The name of the IAM user for whom you want to enable the MFA device.
///
///
///
/// This parameter allows (through its regex
/// pattern) a string of characters consisting of upper and lowercase alphanumeric
/// characters with no spaces. You can also include any of the following characters: _+=,.@-
///
///
[AWSProperty(Required=true, Min=1, Max=128)]
public string UserName
{
get { return this._userName; }
set { this._userName = value; }
}
// Check to see if UserName property is set
internal bool IsSetUserName()
{
return this._userName != null;
}
}
}