com.amazonaws.services.securitytoken.model
Class AssumeRoleWithWebIdentityRequest

java.lang.Object
  extended by com.amazonaws.AmazonWebServiceRequest
      extended by com.amazonaws.services.securitytoken.model.AssumeRoleWithWebIdentityRequest
All Implemented Interfaces:
java.io.Serializable

public class AssumeRoleWithWebIdentityRequest
extends AmazonWebServiceRequest
implements java.io.Serializable

Container for the parameters to the AssumeRoleWithWebIdentity operation.

Returns a set of temporary security credentials for users who have been authenticated in a mobile or web application with a web identity provider, such as Login with Amazon, Facebook, or Google.

Calling AssumeRoleWithWebIdentity does not require the use of AWS security credentials. Therefore, you can distribute an application (for example, on mobile devices) that requests temporary security credentials without including long-term AWS credentials in the application, and without deploying server-based proxy services that use long-term AWS credentials. Instead, the identity of the caller is validated by using a token from the web identity provider.

The temporary security credentials returned by this API consist of an access key ID, a secret access key, and a security token. Applications can use these temporary security credentials to sign calls to AWS service APIs. The credentials are valid for the duration that you specified when calling AssumeRoleWithWebIdentity , which can be from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the temporary security credentials are valid for 1 hour.

Optionally, you can pass an IAM access policy to this operation. If you choose not to pass a policy, the temporary security credentials that are returned by the operation have the permissions that are defined in the access policy of the role that is being assumed. If you pass a policy to this operation, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials .

Before your application can call AssumeRoleWithWebIdentity , you must have an identity token from a supported identity provider and create a role that the application can assume. The role that your application assumes must trust the identity provider that is associated with the identity token. In other words, the identity provider must be specified in the role's trust policy.

For more information about how to use web identity federation and the AssumeRoleWithWebIdentity , see the following resources:

See Also:
AWSSecurityTokenService.assumeRoleWithWebIdentity(AssumeRoleWithWebIdentityRequest), Serialized Form

Constructor Summary
AssumeRoleWithWebIdentityRequest()
           
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 java.lang.Integer getDurationSeconds()
          The duration, in seconds, of the role session.
 java.lang.String getPolicy()
          An IAM policy in JSON format.
 java.lang.String getProviderId()
          The fully-qualified host component of the domain name of the identity provider.
 java.lang.String getRoleArn()
          The Amazon Resource Name (ARN) of the role that the caller is assuming.
 java.lang.String getRoleSessionName()
          An identifier for the assumed role session.
 java.lang.String getWebIdentityToken()
          The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider.
 int hashCode()
           
 void setDurationSeconds(java.lang.Integer durationSeconds)
          The duration, in seconds, of the role session.
 void setPolicy(java.lang.String policy)
          An IAM policy in JSON format.
 void setProviderId(java.lang.String providerId)
          The fully-qualified host component of the domain name of the identity provider.
 void setRoleArn(java.lang.String roleArn)
          The Amazon Resource Name (ARN) of the role that the caller is assuming.
 void setRoleSessionName(java.lang.String roleSessionName)
          An identifier for the assumed role session.
 void setWebIdentityToken(java.lang.String webIdentityToken)
          The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider.
 java.lang.String toString()
          Returns a string representation of this object; useful for testing and debugging.
 AssumeRoleWithWebIdentityRequest withDurationSeconds(java.lang.Integer durationSeconds)
          The duration, in seconds, of the role session.
 AssumeRoleWithWebIdentityRequest withPolicy(java.lang.String policy)
          An IAM policy in JSON format.
 AssumeRoleWithWebIdentityRequest withProviderId(java.lang.String providerId)
          The fully-qualified host component of the domain name of the identity provider.
 AssumeRoleWithWebIdentityRequest withRoleArn(java.lang.String roleArn)
          The Amazon Resource Name (ARN) of the role that the caller is assuming.
 AssumeRoleWithWebIdentityRequest withRoleSessionName(java.lang.String roleSessionName)
          An identifier for the assumed role session.
 AssumeRoleWithWebIdentityRequest withWebIdentityToken(java.lang.String webIdentityToken)
          The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider.
 
Methods inherited from class com.amazonaws.AmazonWebServiceRequest
copyPrivateRequestParameters, getDelegationToken, getRequestClientOptions, getRequestCredentials, getRequestMetricCollector, setDelegationToken, setRequestCredentials, setRequestMetricCollector, withRequestMetricCollector
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AssumeRoleWithWebIdentityRequest

public AssumeRoleWithWebIdentityRequest()
Method Detail

getRoleArn

public java.lang.String getRoleArn()
The Amazon Resource Name (ARN) of the role that the caller is assuming.

Constraints:
Length: 20 - 2048

Returns:
The Amazon Resource Name (ARN) of the role that the caller is assuming.

setRoleArn

public void setRoleArn(java.lang.String roleArn)
The Amazon Resource Name (ARN) of the role that the caller is assuming.

Constraints:
Length: 20 - 2048

Parameters:
roleArn - The Amazon Resource Name (ARN) of the role that the caller is assuming.

withRoleArn

public AssumeRoleWithWebIdentityRequest withRoleArn(java.lang.String roleArn)
The Amazon Resource Name (ARN) of the role that the caller is assuming.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 20 - 2048

Parameters:
roleArn - The Amazon Resource Name (ARN) of the role that the caller is assuming.
Returns:
A reference to this updated object so that method calls can be chained together.

getRoleSessionName

public java.lang.String getRoleSessionName()
An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

Constraints:
Length: 2 - 32
Pattern: [\w+=,.@-]*

Returns:
An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

setRoleSessionName

public void setRoleSessionName(java.lang.String roleSessionName)
An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

Constraints:
Length: 2 - 32
Pattern: [\w+=,.@-]*

Parameters:
roleSessionName - An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

withRoleSessionName

public AssumeRoleWithWebIdentityRequest withRoleSessionName(java.lang.String roleSessionName)
An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 2 - 32
Pattern: [\w+=,.@-]*

Parameters:
roleSessionName - An identifier for the assumed role session. Typically, you pass the name or identifier that is associated with the user who is using your application. That way, the temporary security credentials that your application will use are associated with that user. This session name is included as part of the ARN and assumed role ID in the AssumedRoleUser response element.
Returns:
A reference to this updated object so that method calls can be chained together.

getWebIdentityToken

public java.lang.String getWebIdentityToken()
The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

Constraints:
Length: 4 - 2048

Returns:
The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

setWebIdentityToken

public void setWebIdentityToken(java.lang.String webIdentityToken)
The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

Constraints:
Length: 4 - 2048

Parameters:
webIdentityToken - The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

withWebIdentityToken

public AssumeRoleWithWebIdentityRequest withWebIdentityToken(java.lang.String webIdentityToken)
The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 4 - 2048

Parameters:
webIdentityToken - The OAuth 2.0 access token or OpenID Connect ID token that is provided by the identity provider. Your application must get this token by authenticating the user who is using your application with a web identity provider before the application makes an AssumeRoleWithWebIdentity call.
Returns:
A reference to this updated object so that method calls can be chained together.

getProviderId

public java.lang.String getProviderId()
The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.

Constraints:
Length: 4 - 2048

Returns:
The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.

setProviderId

public void setProviderId(java.lang.String providerId)
The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.

Constraints:
Length: 4 - 2048

Parameters:
providerId - The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.

withProviderId

public AssumeRoleWithWebIdentityRequest withProviderId(java.lang.String providerId)
The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 4 - 2048

Parameters:
providerId - The fully-qualified host component of the domain name of the identity provider. Specify this value only for OAuth access tokens. Do not specify this value for OpenID Connect ID tokens, such as accounts.google.com. Do not include URL schemes and port numbers. Currently, www.amazon.com and graph.facebook.com are supported.
Returns:
A reference to this updated object so that method calls can be chained together.

getPolicy

public java.lang.String getPolicy()
An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.

Constraints:
Length: 1 - 2048
Pattern: [\u0009\u000A\u000D\u0020-\u00FF]+

Returns:
An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.


setPolicy

public void setPolicy(java.lang.String policy)
An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.

Constraints:
Length: 1 - 2048
Pattern: [\u0009\u000A\u000D\u0020-\u00FF]+

Parameters:
policy - An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.


withPolicy

public AssumeRoleWithWebIdentityRequest withPolicy(java.lang.String policy)
An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Length: 1 - 2048
Pattern: [\u0009\u000A\u000D\u0020-\u00FF]+

Parameters:
policy - An IAM policy in JSON format.

The policy parameter is optional. If you pass a policy, the temporary security credentials that are returned by the operation have the permissions that are allowed by both the access policy of the role that is being assumed, and the policy that you pass. This gives you a way to further restrict the permissions for the resulting temporary security credentials. You cannot use the passed policy to grant permissions that are in excess of those allowed by the access policy of the role that is being assumed. For more information, see Permissions for AssumeRoleWithWebIdentity in Using Temporary Security Credentials.

Returns:
A reference to this updated object so that method calls can be chained together.

getDurationSeconds

public java.lang.Integer getDurationSeconds()
The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

Constraints:
Range: 900 - 129600

Returns:
The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

setDurationSeconds

public void setDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

Constraints:
Range: 900 - 129600

Parameters:
durationSeconds - The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

withDurationSeconds

public AssumeRoleWithWebIdentityRequest withDurationSeconds(java.lang.Integer durationSeconds)
The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.

Returns a reference to this object so that method calls can be chained together.

Constraints:
Range: 900 - 129600

Parameters:
durationSeconds - The duration, in seconds, of the role session. The value can range from 900 seconds (15 minutes) to 3600 seconds (1 hour). By default, the value is set to 3600 seconds.
Returns:
A reference to this updated object so that method calls can be chained together.

toString

public java.lang.String toString()
Returns a string representation of this object; useful for testing and debugging.

Overrides:
toString in class java.lang.Object
Returns:
A string representation of this object.
See Also:
Object.toString()

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object obj)
Overrides:
equals in class java.lang.Object


Copyright © 2010 Amazon Web Services, Inc. All Rights Reserved.