public class GetSessionTokenRequest extends AmazonWebServiceRequest implements java.io.Serializable
Returns a set of temporary credentials for an Amazon Web Services account or
IAM user. The credentials consist of an access key ID, a secret access key,
and a security token. Typically, you use GetSessionToken
if you
want to use MFA to protect programmatic calls to specific Amazon Web Services
API operations like Amazon EC2 StopInstances
.
MFA-enabled IAM users must call GetSessionToken
and submit an
MFA code that is associated with their MFA device. Using the temporary
security credentials that the call returns, IAM users can then make
programmatic calls to API operations that require MFA authentication. An
incorrect MFA code causes the API to return an access denied error. For a
comparison of GetSessionToken
with the other API operations that
produce temporary credentials, see Requesting Temporary Security Credentials and Comparing the Amazon Web Services STS API operations in the IAM User
Guide.
No permissions are required for users to perform this operation. The purpose
of the sts:GetSessionToken
operation is to authenticate the user
using MFA. You cannot use policies to control authentication operations. For
more information, see Permissions for GetSessionToken in the IAM User Guide.
Session Duration
The GetSessionToken
operation must be called by using the
long-term Amazon Web Services security credentials of an IAM user.
Credentials that are created by IAM users are valid for the duration that you
specify. This duration can range from 900 seconds (15 minutes) up to a
maximum of 129,600 seconds (36 hours), with a default of 43,200 seconds (12
hours). Credentials based on account credentials can range from 900 seconds
(15 minutes) up to 3,600 seconds (1 hour), with a default of 1 hour.
Permissions
The temporary security credentials created by GetSessionToken
can be used to make API calls to any Amazon Web Services service with the
following exceptions:
You cannot call any IAM API operations unless MFA authentication information is included in the request.
You cannot call any STS API except AssumeRole
or
GetCallerIdentity
.
The credentials that GetSessionToken
returns are based on
permissions associated with the IAM user whose credentials were used to call
the operation. The temporary credentials have the same permissions as the IAM
user.
Although it is possible to call GetSessionToken
using the
security credentials of an Amazon Web Services account root user rather than
an IAM user, we do not recommend it. If GetSessionToken
is
called using root user credentials, the temporary credentials have root user
permissions. For more information, see Safeguard your root user credentials and don't use them for everyday
tasks in the IAM User Guide
For more information about using GetSessionToken
to create
temporary credentials, see Temporary Credentials for Users in Untrusted Environments in the IAM
User Guide.
Constructor and Description |
---|
GetSessionTokenRequest() |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object obj) |
java.lang.Integer |
getDurationSeconds()
The duration, in seconds, that the credentials should remain valid.
|
java.lang.String |
getSerialNumber()
The identification number of the MFA device that is associated with the
IAM user who is making the
GetSessionToken call. |
java.lang.String |
getTokenCode()
The value provided by the MFA device, if MFA is required.
|
int |
hashCode() |
void |
setDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, that the credentials should remain valid.
|
void |
setSerialNumber(java.lang.String serialNumber)
The identification number of the MFA device that is associated with the
IAM user who is making the
GetSessionToken call. |
void |
setTokenCode(java.lang.String tokenCode)
The value provided by the MFA device, if MFA is required.
|
java.lang.String |
toString()
Returns a string representation of this object; useful for testing and
debugging.
|
GetSessionTokenRequest |
withDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, that the credentials should remain valid.
|
GetSessionTokenRequest |
withSerialNumber(java.lang.String serialNumber)
The identification number of the MFA device that is associated with the
IAM user who is making the
GetSessionToken call. |
GetSessionTokenRequest |
withTokenCode(java.lang.String tokenCode)
The value provided by the MFA device, if MFA is required.
|
clone, copyBaseTo, getCloneRoot, getCloneSource, getGeneralProgressListener, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setGeneralProgressListener, setRequestCredentials, setRequestMetricCollector, withGeneralProgressListener, withRequestMetricCollector
public java.lang.Integer getDurationSeconds()
The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
Constraints:
Range: 900 - 129600
The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
public void setDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
Constraints:
Range: 900 - 129600
durationSeconds
- The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
public GetSessionTokenRequest withDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Range: 900 - 129600
durationSeconds
- The duration, in seconds, that the credentials should remain valid. Acceptable durations for IAM user sessions range from 900 seconds (15 minutes) to 129,600 seconds (36 hours), with 43,200 seconds (12 hours) as the default. Sessions for Amazon Web Services account owners are restricted to a maximum of 3,600 seconds (one hour). If the duration is longer than one hour, the session for Amazon Web Services account owners defaults to one hour.
public java.lang.String getSerialNumber()
The identification number of the MFA device that is associated with the
IAM user who is making the GetSessionToken
call. Specify
this value if the IAM user has a policy that requires MFA authentication.
The value is either the serial number for a hardware device (such as
GAHT12345678
) or an Amazon Resource Name (ARN) for a virtual
device (such as arn:aws:iam::123456789012:mfa/user
). You can
find the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
Constraints:
Length: 9 - 256
Pattern: [\w+=/:,.@-]*
The identification number of the MFA device that is associated
with the IAM user who is making the GetSessionToken
call. Specify this value if the IAM user has a policy that
requires MFA authentication. The value is either the serial
number for a hardware device (such as GAHT12345678
)
or an Amazon Resource Name (ARN) for a virtual device (such as
arn:aws:iam::123456789012:mfa/user
). You can find
the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
public void setSerialNumber(java.lang.String serialNumber)
The identification number of the MFA device that is associated with the
IAM user who is making the GetSessionToken
call. Specify
this value if the IAM user has a policy that requires MFA authentication.
The value is either the serial number for a hardware device (such as
GAHT12345678
) or an Amazon Resource Name (ARN) for a virtual
device (such as arn:aws:iam::123456789012:mfa/user
). You can
find the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
Constraints:
Length: 9 - 256
Pattern: [\w+=/:,.@-]*
serialNumber
-
The identification number of the MFA device that is associated
with the IAM user who is making the
GetSessionToken
call. Specify this value if the
IAM user has a policy that requires MFA authentication. The
value is either the serial number for a hardware device (such
as GAHT12345678
) or an Amazon Resource Name (ARN)
for a virtual device (such as
arn:aws:iam::123456789012:mfa/user
). You can find
the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security
credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
public GetSessionTokenRequest withSerialNumber(java.lang.String serialNumber)
The identification number of the MFA device that is associated with the
IAM user who is making the GetSessionToken
call. Specify
this value if the IAM user has a policy that requires MFA authentication.
The value is either the serial number for a hardware device (such as
GAHT12345678
) or an Amazon Resource Name (ARN) for a virtual
device (such as arn:aws:iam::123456789012:mfa/user
). You can
find the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 9 - 256
Pattern: [\w+=/:,.@-]*
serialNumber
-
The identification number of the MFA device that is associated
with the IAM user who is making the
GetSessionToken
call. Specify this value if the
IAM user has a policy that requires MFA authentication. The
value is either the serial number for a hardware device (such
as GAHT12345678
) or an Amazon Resource Name (ARN)
for a virtual device (such as
arn:aws:iam::123456789012:mfa/user
). You can find
the device for an IAM user by going to the Amazon Web Services
Management Console and viewing the user's security
credentials.
The regex used to validate this parameter is a string of characters consisting of upper- and lower-case alphanumeric characters with no spaces. You can also include underscores or any of the following characters: =,.@:/-
public java.lang.String getTokenCode()
The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
Constraints:
Length: 6 - 6
Pattern: [\d]*
The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
public void setTokenCode(java.lang.String tokenCode)
The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
Constraints:
Length: 6 - 6
Pattern: [\d]*
tokenCode
- The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
public GetSessionTokenRequest withTokenCode(java.lang.String tokenCode)
The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
Returns a reference to this object so that method calls can be chained together.
Constraints:
Length: 6 - 6
Pattern: [\d]*
tokenCode
- The value provided by the MFA device, if MFA is required. If any policy requires the IAM user to submit an MFA code, specify this value. If MFA authentication is required, the user must provide a code when requesting a set of temporary security credentials. A user who fails to provide the code receives an "access denied" response when requesting resources that require MFA authentication.
The format for this parameter, as described by its regex pattern, is a sequence of six numeric digits.
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
public int hashCode()
hashCode
in class java.lang.Object
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object