forked from aws/aws-sdk-java
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMultiFactorAuthentication.java
More file actions
164 lines (152 loc) · 5.9 KB
/
MultiFactorAuthentication.java
File metadata and controls
164 lines (152 loc) · 5.9 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
/*
* Copyright 2010-2013 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.
*/
package com.amazonaws.services.s3.model;
/**
* Contains Multi-Factor Authentication (MFA) information to be included
* in Amazon S3 requests,
* consisting of the serial number of the MFA device associated with your AWS
* account and the current, unique MFA token generated by that device.
* <p>
* Each unique token generated by an MFA device can only be used in one request.
* It is not valid to reuse the same token in additional requests.
* </p>
* <p>
* For more information about uses of Multi-Factor Authentication in S3
* operations, see {@link BucketVersioningConfiguration} and the explanation
* of the MFA Delete functionality.
* </p>
* <p>
* For more information on AWS Multi-Factor Authentication, including how to get
* a device and associate it with an AWS account, see <a
* href="http://aws.amazon.com/mfa"/>http://aws.amazon.com/mfa</a>
* </p>
*/
public class MultiFactorAuthentication {
/**
* The serial number of the Multi-Factor Authentication device associated
* with your AWS account.
*/
private String deviceSerialNumber;
/**
* The current, unique Multi-Factor Authentication (MFA) token generated by
* the MFA device associated with your AWS account.
*/
private String token;
/**
* Constructs a new {@link MultiFactorAuthentication} object for use in any
* Amazonn S3
* operation that accepts requests with Multi-Factor Authentication (MFA).
*
* @param deviceSerialNumber
* The serial number identifying the MFA device associated with
* the caller's AWS account.
* @param token
* The current unique token generated by the MFA device.
*/
public MultiFactorAuthentication(String deviceSerialNumber, String token) {
this.deviceSerialNumber = deviceSerialNumber;
this.token = token;
}
/**
* Gets the Multi-Factor Authentication device serial number.
*
* @return The Multi-Factor Authentication device serial number.
*
* @see MultiFactorAuthentication#setDeviceSerialNumber(String)
* @see MultiFactorAuthentication#withDeviceSerialNumber(String)
*/
public String getDeviceSerialNumber() {
return deviceSerialNumber;
}
/**
* Sets the serial number of the Multi-Factor Authentication device
* associated with the caller's AWS account.
*
* @param deviceSerialNumber
* The Multi-Factor Authentication device serial number for the
* device associated with the caller's AWS account.
*
* @see MultiFactorAuthentication#getDeviceSerialNumber()
* @see MultiFactorAuthentication#withDeviceSerialNumber(String)
*/
public void setDeviceSerialNumber(String deviceSerialNumber) {
this.deviceSerialNumber = deviceSerialNumber;
}
/**
* Sets the Multi-Factor Authentication device serial number to include with
* this request.
* Returns this {@link MultiFactorAuthentication}, enabling additional method
* calls to be chained together.
*
* @param deviceSerialNumber
* The serial number of the Multi-Factor Authentication device
* associated with the caller's AWS account.
*
* @return This {@link MultiFactorAuthentication}, enabling additional method
* calls to be chained together.
*
* @see MultiFactorAuthentication#getDeviceSerialNumber()
* @see MultiFactorAuthentication#setDeviceSerialNumber(String)
*/
public MultiFactorAuthentication withDeviceSerialNumber(String deviceSerialNumber) {
setDeviceSerialNumber(deviceSerialNumber);
return this;
}
/**
* Gets the Multi-Factor Authentication token.
*
* @return The Multi-Factor Authentication token.
*
* @see MultiFactorAuthentication#setToken(String)
* @see MultiFactorAuthentication#withToken(String)
*/
public String getToken() {
return token;
}
/**
* Sets the current unique Multi-Factor Authentication token generated by
* the device associated with the caller's AWS account.
*
* @param token
* The current, unique Multi-Factor Authentication token generated
* by the device associated with the caller's AWS account.
*
* @see MultiFactorAuthentication#getToken()
* @see MultiFactorAuthentication#withToken(String)
*/
public void setToken(String token) {
this.token = token;
}
/**
* Sets the current, unique Multi-Factor Authentication token generated by
* the device associated with the caller's AWS account.
* Returns this {@link MultiFactorAuthentication}, enabling additional method
* calls to be chained together.
*
* @param token
* The current, unique Multi-Factor Authentication token
* generated by the device associated with the caller's AWS account.
*
* @return This {@link MultiFactorAuthentication}, enabling additional method
* calls to be chained together.
*
* @see MultiFactorAuthentication#getToken()
* @see MultiFactorAuthentication#setToken(String)
*/
public MultiFactorAuthentication withToken(String token) {
setToken(token);
return this;
}
}