All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amazonaws.services.identitymanagement.AmazonIdentityManagementAsyncClient Maven / Gradle / Ivy

/*
 * Copyright 2010-2014 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.identitymanagement;

import java.util.concurrent.Callable;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;

import com.amazonaws.AmazonClientException;
import com.amazonaws.AmazonServiceException;
import com.amazonaws.handlers.AsyncHandler;
import com.amazonaws.ClientConfiguration;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.AWSCredentialsProvider;
import com.amazonaws.auth.DefaultAWSCredentialsProviderChain;

import com.amazonaws.services.identitymanagement.model.*;

/**
 * Asynchronous client for accessing AmazonIdentityManagement.
 * All asynchronous calls made using this client are non-blocking. Callers could either
 * process the result and handle the exceptions in the worker thread by providing a callback handler
 * when making the call, or use the returned Future object to check the result of the call in the calling thread.
 * AWS Identity and Access Management 

* AWS Identity and Access Management (IAM) is a web service that you can * use to manage users and user permissions under your AWS account. This * guide provides descriptions of the IAM API. For general information * about IAM, see * AWS Identity and Access Management (IAM) . For the user guide for IAM, see Using IAM * . *

*

* NOTE:AWS provides SDKs that consist of libraries and sample * code for various programming languages and platforms (Java, Ruby, * .NET, iOS, Android, etc.). The SDKs provide a convenient way to create * programmatic access to IAM and AWS. For example, the SDKs take care of * tasks such as cryptographically signing requests (see below), managing * errors, and retrying requests automatically. For information about the * AWS SDKs, including how to download and install them, see the Tools * for Amazon Web Services page. *

*

* Using the IAM Query API, you make direct calls to the IAM web * service. IAM supports GET and POST requests for all actions. That is, * the API does not require you to use GET for some actions and POST for * others. However, GET requests are subject to the limitation size of a * URL. Therefore, for operations that require larger sizes, use a POST * request. *

*

* Signing Requests *

*

* Requests must be signed using an access key ID and a secret access * key. We strongly recommend that you do not use your AWS account access * key ID and secret access key for everyday work with IAM. You can use * the access key ID and secret access key for an IAM user or you can use * the AWS Security Token Service to generate temporary security * credentials and use those to sign requests. *

*

* To sign requests, we recommend that you use * Signature Version 4 * . If you have an existing application that uses Signature Version 2, * you do not have to update it to use Signature Version 4. However, some * operations now require Signature Version 4. The documentation for * operations that require version 4 indicate this requirement. *

*

* Recording API requests *

*

* IAM supports AWS CloudTrail, which is a service that records AWS * calls for your AWS account and delivers log files to an Amazon S3 * bucket. By using information collected by CloudTrail, you can * determine what requests were successfully made to IAM, who made the * request, when it was made, and so on. To learn more about CloudTrail, * including how to turn it on and find your log files, see the * AWS CloudTrail User Guide * . *

*

* Additional Resources *

*

* For more information, see the following: *

* *
    *
  • * AWS Security Credentials * . This topic provides general information about the types of * credentials used for accessing AWS.
  • *
  • * IAM Best Practices * . This topic presents a list of suggestions for using the IAM service * to help secure your AWS resources.
  • *
  • * AWS Security Token Service * . This guide describes how to create and use temporary security * credentials.
  • *
  • * Signing AWS API Requests * . This set of topics walk you through the process of signing a * request using an access key ID and secret access key.
  • * *
*/ public class AmazonIdentityManagementAsyncClient extends AmazonIdentityManagementClient implements AmazonIdentityManagementAsync { /** * Executor service for executing asynchronous requests. */ private ExecutorService executorService; private static final int DEFAULT_THREAD_POOL_SIZE = 50; /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement. A credentials provider chain will be used * that searches for credentials in this order: *
    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @see DefaultAWSCredentialsProviderChain */ public AmazonIdentityManagementAsyncClient() { this(new DefaultAWSCredentialsProviderChain()); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement. A credentials provider chain will be used * that searches for credentials in this order: *

    *
  • Environment Variables - AWS_ACCESS_KEY_ID and AWS_SECRET_KEY
  • *
  • Java System Properties - aws.accessKeyId and aws.secretKey
  • *
  • Instance profile credentials delivered through the Amazon EC2 metadata service
  • *
* *

* All service calls made using this new client object are blocking, and will not * return until the service call completes. * * @param clientConfiguration The client configuration options controlling how this * client connects to AmazonIdentityManagement * (ex: proxy settings, retry counts, etc.). * * @see DefaultAWSCredentialsProviderChain */ public AmazonIdentityManagementAsyncClient(ClientConfiguration clientConfiguration) { this(new DefaultAWSCredentialsProviderChain(), clientConfiguration, Executors.newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials. * Default client settings will be used, and a fixed size thread pool will be * created for executing the asynchronous tasks. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentials The AWS credentials (access key ID and secret key) to use * when authenticating with AWS services. */ public AmazonIdentityManagementAsyncClient(AWSCredentials awsCredentials) { this(awsCredentials, Executors.newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials * and executor service. Default client settings will be used. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use * when authenticating with AWS services. * @param executorService * The executor service by which all asynchronous requests will * be executed. */ public AmazonIdentityManagementAsyncClient(AWSCredentials awsCredentials, ExecutorService executorService) { super(awsCredentials); this.executorService = executorService; } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials, * executor service, and client configuration options. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentials * The AWS credentials (access key ID and secret key) to use * when authenticating with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy * settings, etc). * @param executorService * The executor service by which all asynchronous requests will * be executed. */ public AmazonIdentityManagementAsyncClient(AWSCredentials awsCredentials, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentials, clientConfiguration); this.executorService = executorService; } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials provider. * Default client settings will be used, and a fixed size thread pool will be * created for executing the asynchronous tasks. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. */ public AmazonIdentityManagementAsyncClient(AWSCredentialsProvider awsCredentialsProvider) { this(awsCredentialsProvider, Executors.newFixedThreadPool(DEFAULT_THREAD_POOL_SIZE)); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials provider * and executor service. Default client settings will be used. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. * @param executorService * The executor service by which all asynchronous requests will * be executed. */ public AmazonIdentityManagementAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ExecutorService executorService) { this(awsCredentialsProvider, new ClientConfiguration(), executorService); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials * provider and client configuration options. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy * settings, etc). */ public AmazonIdentityManagementAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration) { this(awsCredentialsProvider, clientConfiguration, Executors.newFixedThreadPool(clientConfiguration.getMaxConnections())); } /** * Constructs a new asynchronous client to invoke service methods on * AmazonIdentityManagement using the specified AWS account credentials * provider, executor service, and client configuration options. * *

* All calls made using this new client object are non-blocking, and will immediately * return a Java Future object that the caller can later check to see if the service * call has actually completed. * * @param awsCredentialsProvider * The AWS credentials provider which will provide credentials * to authenticate requests with AWS services. * @param clientConfiguration * Client configuration options (ex: max retry limit, proxy * settings, etc). * @param executorService * The executor service by which all asynchronous requests will * be executed. */ public AmazonIdentityManagementAsyncClient(AWSCredentialsProvider awsCredentialsProvider, ClientConfiguration clientConfiguration, ExecutorService executorService) { super(awsCredentialsProvider, clientConfiguration); this.executorService = executorService; } /** * Returns the executor service used by this async client to execute * requests. * * @return The executor service used by this async client to execute * requests. */ public ExecutorService getExecutorService() { return executorService; } /** * Shuts down the client, releasing all managed resources. This includes * forcibly terminating all pending asynchronous service calls. Clients who * wish to give pending asynchronous service calls time to complete should * call getExecutorService().shutdown() followed by * getExecutorService().awaitTermination() prior to calling this method. */ @Override public void shutdown() { super.shutdown(); executorService.shutdownNow(); } /** *

* Deletes the specified AWS account alias. For information about using * an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

* * @param deleteAccountAliasRequest Container for the necessary * parameters to execute the DeleteAccountAlias operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteAccountAlias service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccountAliasAsync(final DeleteAccountAliasRequest deleteAccountAliasRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteAccountAlias(deleteAccountAliasRequest); return null; } }); } /** *

* Deletes the specified AWS account alias. For information about using * an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

* * @param deleteAccountAliasRequest Container for the necessary * parameters to execute the DeleteAccountAlias operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteAccountAlias service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccountAliasAsync( final DeleteAccountAliasRequest deleteAccountAliasRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteAccountAlias(deleteAccountAliasRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteAccountAliasRequest, null); return null; } }); } /** *

* Lists the groups that have the specified path prefix. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupsRequest Container for the necessary parameters to * execute the ListGroups operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListGroups service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupsAsync(final ListGroupsRequest listGroupsRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupsResult call() throws Exception { return listGroups(listGroupsRequest); } }); } /** *

* Lists the groups that have the specified path prefix. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupsRequest Container for the necessary parameters to * execute the ListGroups operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListGroups service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupsAsync( final ListGroupsRequest listGroupsRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupsResult call() throws Exception { ListGroupsResult result; try { result = listGroups(listGroupsRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listGroupsRequest, result); return result; } }); } /** *

* Deletes the access key associated with the specified user. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

* * @param deleteAccessKeyRequest Container for the necessary parameters * to execute the DeleteAccessKey operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccessKeyAsync(final DeleteAccessKeyRequest deleteAccessKeyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteAccessKey(deleteAccessKeyRequest); return null; } }); } /** *

* Deletes the access key associated with the specified user. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

* * @param deleteAccessKeyRequest Container for the necessary parameters * to execute the DeleteAccessKey operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccessKeyAsync( final DeleteAccessKeyRequest deleteAccessKeyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteAccessKey(deleteAccessKeyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteAccessKeyRequest, null); return null; } }); } /** *

* Deletes a virtual MFA device. *

*

* NOTE:You must deactivate a user's virtual MFA device before * you can delete it. For information about deactivating MFA devices, see * DeactivateMFADevice. *

* * @param deleteVirtualMFADeviceRequest Container for the necessary * parameters to execute the DeleteVirtualMFADevice operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteVirtualMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteVirtualMFADeviceAsync(final DeleteVirtualMFADeviceRequest deleteVirtualMFADeviceRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteVirtualMFADevice(deleteVirtualMFADeviceRequest); return null; } }); } /** *

* Deletes a virtual MFA device. *

*

* NOTE:You must deactivate a user's virtual MFA device before * you can delete it. For information about deactivating MFA devices, see * DeactivateMFADevice. *

* * @param deleteVirtualMFADeviceRequest Container for the necessary * parameters to execute the DeleteVirtualMFADevice operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteVirtualMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteVirtualMFADeviceAsync( final DeleteVirtualMFADeviceRequest deleteVirtualMFADeviceRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteVirtualMFADevice(deleteVirtualMFADeviceRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteVirtualMFADeviceRequest, null); return null; } }); } /** *

* Deletes the specified policy associated with the specified user. *

* * @param deleteUserPolicyRequest Container for the necessary parameters * to execute the DeleteUserPolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteUserPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteUserPolicyAsync(final DeleteUserPolicyRequest deleteUserPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteUserPolicy(deleteUserPolicyRequest); return null; } }); } /** *

* Deletes the specified policy associated with the specified user. *

* * @param deleteUserPolicyRequest Container for the necessary parameters * to execute the DeleteUserPolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteUserPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteUserPolicyAsync( final DeleteUserPolicyRequest deleteUserPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteUserPolicy(deleteUserPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteUserPolicyRequest, null); return null; } }); } /** *

* Adds (or updates) a policy document associated with the specified * user. For information about policies, refer to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the number of policies you can * associate with a user, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutUserPolicy. For information about * setting up signatures and authorization through the API, go to Signing * AWS API Requests in the AWS General Reference. For general information * about using the Query API with IAM, go to Making Query Requests in the * Using IAM guide. *

* * @param putUserPolicyRequest Container for the necessary parameters to * execute the PutUserPolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * PutUserPolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putUserPolicyAsync(final PutUserPolicyRequest putUserPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { putUserPolicy(putUserPolicyRequest); return null; } }); } /** *

* Adds (or updates) a policy document associated with the specified * user. For information about policies, refer to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the number of policies you can * associate with a user, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutUserPolicy. For information about * setting up signatures and authorization through the API, go to Signing * AWS API Requests in the AWS General Reference. For general information * about using the Query API with IAM, go to Making Query Requests in the * Using IAM guide. *

* * @param putUserPolicyRequest Container for the necessary parameters to * execute the PutUserPolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * PutUserPolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putUserPolicyAsync( final PutUserPolicyRequest putUserPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { putUserPolicy(putUserPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(putUserPolicyRequest, null); return null; } }); } /** *

* Lists the server certificates that have the specified path prefix. If * none exist, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listServerCertificatesRequest Container for the necessary * parameters to execute the ListServerCertificates operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListServerCertificates service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listServerCertificatesAsync(final ListServerCertificatesRequest listServerCertificatesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListServerCertificatesResult call() throws Exception { return listServerCertificates(listServerCertificatesRequest); } }); } /** *

* Lists the server certificates that have the specified path prefix. If * none exist, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listServerCertificatesRequest Container for the necessary * parameters to execute the ListServerCertificates operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListServerCertificates service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listServerCertificatesAsync( final ListServerCertificatesRequest listServerCertificatesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListServerCertificatesResult call() throws Exception { ListServerCertificatesResult result; try { result = listServerCertificates(listServerCertificatesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listServerCertificatesRequest, result); return result; } }); } /** *

* Lists the SAML providers in the account. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param listSAMLProvidersRequest Container for the necessary parameters * to execute the ListSAMLProviders operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListSAMLProviders service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listSAMLProvidersAsync(final ListSAMLProvidersRequest listSAMLProvidersRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListSAMLProvidersResult call() throws Exception { return listSAMLProviders(listSAMLProvidersRequest); } }); } /** *

* Lists the SAML providers in the account. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param listSAMLProvidersRequest Container for the necessary parameters * to execute the ListSAMLProviders operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListSAMLProviders service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listSAMLProvidersAsync( final ListSAMLProvidersRequest listSAMLProvidersRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListSAMLProvidersResult call() throws Exception { ListSAMLProvidersResult result; try { result = listSAMLProviders(listSAMLProvidersRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listSAMLProvidersRequest, result); return result; } }); } /** *

* Retrieves the specified policy document for the specified user. The * returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getUserPolicyRequest Container for the necessary parameters to * execute the GetUserPolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetUserPolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getUserPolicyAsync(final GetUserPolicyRequest getUserPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetUserPolicyResult call() throws Exception { return getUserPolicy(getUserPolicyRequest); } }); } /** *

* Retrieves the specified policy document for the specified user. The * returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getUserPolicyRequest Container for the necessary parameters to * execute the GetUserPolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetUserPolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getUserPolicyAsync( final GetUserPolicyRequest getUserPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetUserPolicyResult call() throws Exception { GetUserPolicyResult result; try { result = getUserPolicy(getUserPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getUserPolicyRequest, result); return result; } }); } /** *

* Updates the name and/or the path of the specified server certificate. *

*

* IMPORTANT: You should understand the implications of changing * a server certificate's path or name. For more information, see * Managing Server Certificates in the Using IAM guide. *

*

* NOTE:To change a server certificate name the requester must * have appropriate permissions on both the source object and the target * object. For example, to change the name from ProductionCert to * ProdCert, the entity making the request must have permission on * ProductionCert and ProdCert, or must have permission on all (*). For * more information about permissions, see Permissions and Policies. *

* * @param updateServerCertificateRequest Container for the necessary * parameters to execute the UpdateServerCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateServerCertificateAsync(final UpdateServerCertificateRequest updateServerCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateServerCertificate(updateServerCertificateRequest); return null; } }); } /** *

* Updates the name and/or the path of the specified server certificate. *

*

* IMPORTANT: You should understand the implications of changing * a server certificate's path or name. For more information, see * Managing Server Certificates in the Using IAM guide. *

*

* NOTE:To change a server certificate name the requester must * have appropriate permissions on both the source object and the target * object. For example, to change the name from ProductionCert to * ProdCert, the entity making the request must have permission on * ProductionCert and ProdCert, or must have permission on all (*). For * more information about permissions, see Permissions and Policies. *

* * @param updateServerCertificateRequest Container for the necessary * parameters to execute the UpdateServerCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateServerCertificateAsync( final UpdateServerCertificateRequest updateServerCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateServerCertificate(updateServerCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateServerCertificateRequest, null); return null; } }); } /** *

* Updates the name and/or the path of the specified user. *

*

* IMPORTANT: You should understand the implications of changing * a user's path or name. For more information, see Renaming Users and * Groups in the Using IAM guide. *

*

* NOTE:To change a user name the requester must have appropriate * permissions on both the source object and the target object. For * example, to change Bob to Robert, the entity making the request must * have permission on Bob and Robert, or must have permission on all (*). * For more information about permissions, see Permissions and Policies. *

* * @param updateUserRequest Container for the necessary parameters to * execute the UpdateUser operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateUserAsync(final UpdateUserRequest updateUserRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateUser(updateUserRequest); return null; } }); } /** *

* Updates the name and/or the path of the specified user. *

*

* IMPORTANT: You should understand the implications of changing * a user's path or name. For more information, see Renaming Users and * Groups in the Using IAM guide. *

*

* NOTE:To change a user name the requester must have appropriate * permissions on both the source object and the target object. For * example, to change Bob to Robert, the entity making the request must * have permission on Bob and Robert, or must have permission on all (*). * For more information about permissions, see Permissions and Policies. *

* * @param updateUserRequest Container for the necessary parameters to * execute the UpdateUser operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateUserAsync( final UpdateUserRequest updateUserRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateUser(updateUserRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateUserRequest, null); return null; } }); } /** *

* Adds (or updates) a policy document associated with the specified * role. For information about policies, go to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the policies you can associate with a * role, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutRolePolicy. For information about * setting up signatures and authorization through the API, go to Signing * AWS API Requests in the AWS General Reference. For general information * about using the Query API with IAM, go to Making Query Requests in the * Using IAM guide. *

* * @param putRolePolicyRequest Container for the necessary parameters to * execute the PutRolePolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * PutRolePolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putRolePolicyAsync(final PutRolePolicyRequest putRolePolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { putRolePolicy(putRolePolicyRequest); return null; } }); } /** *

* Adds (or updates) a policy document associated with the specified * role. For information about policies, go to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the policies you can associate with a * role, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutRolePolicy. For information about * setting up signatures and authorization through the API, go to Signing * AWS API Requests in the AWS General Reference. For general information * about using the Query API with IAM, go to Making Query Requests in the * Using IAM guide. *

* * @param putRolePolicyRequest Container for the necessary parameters to * execute the PutRolePolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * PutRolePolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putRolePolicyAsync( final PutRolePolicyRequest putRolePolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { putRolePolicy(putRolePolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(putRolePolicyRequest, null); return null; } }); } /** *

* Changes the status of the specified signing certificate from active * to disabled, or vice versa. This action can be used to disable a * user's signing certificate as part of a certificate rotation work * flow. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* For information about rotating certificates, see * Managing Keys and Certificates * in the Using IAM guide. *

* * @param updateSigningCertificateRequest Container for the necessary * parameters to execute the UpdateSigningCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateSigningCertificateAsync(final UpdateSigningCertificateRequest updateSigningCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateSigningCertificate(updateSigningCertificateRequest); return null; } }); } /** *

* Changes the status of the specified signing certificate from active * to disabled, or vice versa. This action can be used to disable a * user's signing certificate as part of a certificate rotation work * flow. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* For information about rotating certificates, see * Managing Keys and Certificates * in the Using IAM guide. *

* * @param updateSigningCertificateRequest Container for the necessary * parameters to execute the UpdateSigningCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateSigningCertificateAsync( final UpdateSigningCertificateRequest updateSigningCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateSigningCertificate(updateSigningCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateSigningCertificateRequest, null); return null; } }); } /** *

* Deletes the specified policy that is associated with the specified * group. *

* * @param deleteGroupPolicyRequest Container for the necessary parameters * to execute the DeleteGroupPolicy operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteGroupPolicyAsync(final DeleteGroupPolicyRequest deleteGroupPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteGroupPolicy(deleteGroupPolicyRequest); return null; } }); } /** *

* Deletes the specified policy that is associated with the specified * group. *

* * @param deleteGroupPolicyRequest Container for the necessary parameters * to execute the DeleteGroupPolicy operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteGroupPolicyAsync( final DeleteGroupPolicyRequest deleteGroupPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteGroupPolicy(deleteGroupPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteGroupPolicyRequest, null); return null; } }); } /** *

* Lists the users that have the specified path prefix. If there are * none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listUsersRequest Container for the necessary parameters to * execute the ListUsers operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListUsers service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listUsersAsync(final ListUsersRequest listUsersRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListUsersResult call() throws Exception { return listUsers(listUsersRequest); } }); } /** *

* Lists the users that have the specified path prefix. If there are * none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listUsersRequest Container for the necessary parameters to * execute the ListUsers operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListUsers service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listUsersAsync( final ListUsersRequest listUsersRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListUsersResult call() throws Exception { ListUsersResult result; try { result = listUsers(listUsersRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listUsersRequest, result); return result; } }); } /** *

* Updates the name and/or the path of the specified group. *

*

* IMPORTANT: You should understand the implications of changing * a group's path or name. For more information, see Renaming Users and * Groups in the Using IAM guide. *

*

* NOTE:To change a group name the requester must have * appropriate permissions on both the source object and the target * object. For example, to change Managers to MGRs, the entity making the * request must have permission on Managers and MGRs, or must have * permission on all (*). For more information about permissions, see * Permissions and Policies. *

* * @param updateGroupRequest Container for the necessary parameters to * execute the UpdateGroup operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateGroupAsync(final UpdateGroupRequest updateGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateGroup(updateGroupRequest); return null; } }); } /** *

* Updates the name and/or the path of the specified group. *

*

* IMPORTANT: You should understand the implications of changing * a group's path or name. For more information, see Renaming Users and * Groups in the Using IAM guide. *

*

* NOTE:To change a group name the requester must have * appropriate permissions on both the source object and the target * object. For example, to change Managers to MGRs, the entity making the * request must have permission on Managers and MGRs, or must have * permission on all (*). For more information about permissions, see * Permissions and Policies. *

* * @param updateGroupRequest Container for the necessary parameters to * execute the UpdateGroup operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateGroupAsync( final UpdateGroupRequest updateGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateGroup(updateGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateGroupRequest, null); return null; } }); } /** *

* Creates a new user for your AWS account. *

*

* For information about limitations on the number of users you can * create, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createUserRequest Container for the necessary parameters to * execute the CreateUser operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createUserAsync(final CreateUserRequest createUserRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateUserResult call() throws Exception { return createUser(createUserRequest); } }); } /** *

* Creates a new user for your AWS account. *

*

* For information about limitations on the number of users you can * create, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createUserRequest Container for the necessary parameters to * execute the CreateUser operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createUserAsync( final CreateUserRequest createUserRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateUserResult call() throws Exception { CreateUserResult result; try { result = createUser(createUserRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createUserRequest, result); return result; } }); } /** *

* Deletes a SAML provider. *

*

* Deleting the provider does not update any roles that reference the * SAML provider as a principal in their trust policies. Any attempt to * assume a role that references a SAML provider that has been deleted * will fail. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param deleteSAMLProviderRequest Container for the necessary * parameters to execute the DeleteSAMLProvider operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteSAMLProviderAsync(final DeleteSAMLProviderRequest deleteSAMLProviderRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteSAMLProvider(deleteSAMLProviderRequest); return null; } }); } /** *

* Deletes a SAML provider. *

*

* Deleting the provider does not update any roles that reference the * SAML provider as a principal in their trust policies. Any attempt to * assume a role that references a SAML provider that has been deleted * will fail. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param deleteSAMLProviderRequest Container for the necessary * parameters to execute the DeleteSAMLProvider operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteSAMLProviderAsync( final DeleteSAMLProviderRequest deleteSAMLProviderRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteSAMLProvider(deleteSAMLProviderRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteSAMLProviderRequest, null); return null; } }); } /** *

* Retrieves a credential report for the AWS account. For more * information about the credential report, see * Getting Credential Reports * in the Using IAM guide. *

* * @param getCredentialReportRequest Container for the necessary * parameters to execute the GetCredentialReport operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetCredentialReport service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getCredentialReportAsync(final GetCredentialReportRequest getCredentialReportRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetCredentialReportResult call() throws Exception { return getCredentialReport(getCredentialReportRequest); } }); } /** *

* Retrieves a credential report for the AWS account. For more * information about the credential report, see * Getting Credential Reports * in the Using IAM guide. *

* * @param getCredentialReportRequest Container for the necessary * parameters to execute the GetCredentialReport operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetCredentialReport service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getCredentialReportAsync( final GetCredentialReportRequest getCredentialReportRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetCredentialReportResult call() throws Exception { GetCredentialReportResult result; try { result = getCredentialReport(getCredentialReportRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getCredentialReportRequest, result); return result; } }); } /** *

* Enables the specified MFA device and associates it with the specified * user name. When enabled, the MFA device is required for every * subsequent login by the user name associated with the device. *

* * @param enableMFADeviceRequest Container for the necessary parameters * to execute the EnableMFADevice operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * EnableMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future enableMFADeviceAsync(final EnableMFADeviceRequest enableMFADeviceRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { enableMFADevice(enableMFADeviceRequest); return null; } }); } /** *

* Enables the specified MFA device and associates it with the specified * user name. When enabled, the MFA device is required for every * subsequent login by the user name associated with the device. *

* * @param enableMFADeviceRequest Container for the necessary parameters * to execute the EnableMFADevice operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * EnableMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future enableMFADeviceAsync( final EnableMFADeviceRequest enableMFADeviceRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { enableMFADevice(enableMFADeviceRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(enableMFADeviceRequest, null); return null; } }); } /** *

* Deletes the password policy for the AWS account. *

* * @param deleteAccountPasswordPolicyRequest Container for the necessary * parameters to execute the DeleteAccountPasswordPolicy operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccountPasswordPolicyAsync(final DeleteAccountPasswordPolicyRequest deleteAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteAccountPasswordPolicy(deleteAccountPasswordPolicyRequest); return null; } }); } /** *

* Deletes the password policy for the AWS account. *

* * @param deleteAccountPasswordPolicyRequest Container for the necessary * parameters to execute the DeleteAccountPasswordPolicy operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteAccountPasswordPolicyAsync( final DeleteAccountPasswordPolicyRequest deleteAccountPasswordPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteAccountPasswordPolicy(deleteAccountPasswordPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteAccountPasswordPolicyRequest, null); return null; } }); } /** *

* Retrieves the user name and password-creation date for the specified * user. If the user has not been assigned a password, the action returns * a 404 ( NoSuchEntity ) error. *

* * @param getLoginProfileRequest Container for the necessary parameters * to execute the GetLoginProfile operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getLoginProfileAsync(final GetLoginProfileRequest getLoginProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetLoginProfileResult call() throws Exception { return getLoginProfile(getLoginProfileRequest); } }); } /** *

* Retrieves the user name and password-creation date for the specified * user. If the user has not been assigned a password, the action returns * a 404 ( NoSuchEntity ) error. *

* * @param getLoginProfileRequest Container for the necessary parameters * to execute the GetLoginProfile operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getLoginProfileAsync( final GetLoginProfileRequest getLoginProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetLoginProfileResult call() throws Exception { GetLoginProfileResult result; try { result = getLoginProfile(getLoginProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getLoginProfileRequest, result); return result; } }); } /** *

* Updates the metadata document for an existing SAML provider. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param updateSAMLProviderRequest Container for the necessary * parameters to execute the UpdateSAMLProvider operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateSAMLProviderAsync(final UpdateSAMLProviderRequest updateSAMLProviderRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UpdateSAMLProviderResult call() throws Exception { return updateSAMLProvider(updateSAMLProviderRequest); } }); } /** *

* Updates the metadata document for an existing SAML provider. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param updateSAMLProviderRequest Container for the necessary * parameters to execute the UpdateSAMLProvider operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateSAMLProviderAsync( final UpdateSAMLProviderRequest updateSAMLProviderRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UpdateSAMLProviderResult call() throws Exception { UpdateSAMLProviderResult result; try { result = updateSAMLProvider(updateSAMLProviderRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateSAMLProviderRequest, result); return result; } }); } /** *

* Uploads a server certificate entity for the AWS account. The server * certificate entity includes a public key certificate, a private key, * and an optional certificate chain, which should all be PEM-encoded. *

*

* For information about the number of server certificates you can * upload, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because the body of the public key certificate, private * key, and the certificate chain can be large, you should use POST * rather than GET when calling UploadServerCertificate. For information * about setting up signatures and authorization through the API, go to * Signing AWS API Requests in the AWS General Reference. For general * information about using the Query API with IAM, go to Making Query * Requests in the Using IAM guide. *

* * @param uploadServerCertificateRequest Container for the necessary * parameters to execute the UploadServerCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UploadServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future uploadServerCertificateAsync(final UploadServerCertificateRequest uploadServerCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UploadServerCertificateResult call() throws Exception { return uploadServerCertificate(uploadServerCertificateRequest); } }); } /** *

* Uploads a server certificate entity for the AWS account. The server * certificate entity includes a public key certificate, a private key, * and an optional certificate chain, which should all be PEM-encoded. *

*

* For information about the number of server certificates you can * upload, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because the body of the public key certificate, private * key, and the certificate chain can be large, you should use POST * rather than GET when calling UploadServerCertificate. For information * about setting up signatures and authorization through the API, go to * Signing AWS API Requests in the AWS General Reference. For general * information about using the Query API with IAM, go to Making Query * Requests in the Using IAM guide. *

* * @param uploadServerCertificateRequest Container for the necessary * parameters to execute the UploadServerCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UploadServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future uploadServerCertificateAsync( final UploadServerCertificateRequest uploadServerCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UploadServerCertificateResult call() throws Exception { UploadServerCertificateResult result; try { result = uploadServerCertificate(uploadServerCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(uploadServerCertificateRequest, result); return result; } }); } /** *

* Creates a new group. *

*

* For information about the number of groups you can create, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createGroupRequest Container for the necessary parameters to * execute the CreateGroup operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createGroupAsync(final CreateGroupRequest createGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateGroupResult call() throws Exception { return createGroup(createGroupRequest); } }); } /** *

* Creates a new group. *

*

* For information about the number of groups you can create, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createGroupRequest Container for the necessary parameters to * execute the CreateGroup operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createGroupAsync( final CreateGroupRequest createGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateGroupResult call() throws Exception { CreateGroupResult result; try { result = createGroup(createGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createGroupRequest, result); return result; } }); } /** *

* This action creates an alias for your AWS account. For information * about using an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

* * @param createAccountAliasRequest Container for the necessary * parameters to execute the CreateAccountAlias operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateAccountAlias service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createAccountAliasAsync(final CreateAccountAliasRequest createAccountAliasRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { createAccountAlias(createAccountAliasRequest); return null; } }); } /** *

* This action creates an alias for your AWS account. For information * about using an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

* * @param createAccountAliasRequest Container for the necessary * parameters to execute the CreateAccountAlias operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateAccountAlias service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createAccountAliasAsync( final CreateAccountAliasRequest createAccountAliasRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { createAccountAlias(createAccountAliasRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createAccountAliasRequest, null); return null; } }); } /** *

* Deletes the specified user. The user must not belong to any groups, * have any keys or signing certificates, or have any attached policies. *

* * @param deleteUserRequest Container for the necessary parameters to * execute the DeleteUser operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteUserAsync(final DeleteUserRequest deleteUserRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteUser(deleteUserRequest); return null; } }); } /** *

* Deletes the specified user. The user must not belong to any groups, * have any keys or signing certificates, or have any attached policies. *

* * @param deleteUserRequest Container for the necessary parameters to * execute the DeleteUser operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteUser service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteUserAsync( final DeleteUserRequest deleteUserRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteUser(deleteUserRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteUserRequest, null); return null; } }); } /** *

* Deactivates the specified MFA device and removes it from association * with the user name for which it was originally enabled. *

* * @param deactivateMFADeviceRequest Container for the necessary * parameters to execute the DeactivateMFADevice operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeactivateMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deactivateMFADeviceAsync(final DeactivateMFADeviceRequest deactivateMFADeviceRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deactivateMFADevice(deactivateMFADeviceRequest); return null; } }); } /** *

* Deactivates the specified MFA device and removes it from association * with the user name for which it was originally enabled. *

* * @param deactivateMFADeviceRequest Container for the necessary * parameters to execute the DeactivateMFADevice operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeactivateMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deactivateMFADeviceAsync( final DeactivateMFADeviceRequest deactivateMFADeviceRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deactivateMFADevice(deactivateMFADeviceRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deactivateMFADeviceRequest, null); return null; } }); } /** *

* Generates a credential report for the AWS account. For more * information about the credential report, see * Getting Credential Reports * in the Using IAM guide. *

* * @param generateCredentialReportRequest Container for the necessary * parameters to execute the GenerateCredentialReport operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GenerateCredentialReport service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future generateCredentialReportAsync(final GenerateCredentialReportRequest generateCredentialReportRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GenerateCredentialReportResult call() throws Exception { return generateCredentialReport(generateCredentialReportRequest); } }); } /** *

* Generates a credential report for the AWS account. For more * information about the credential report, see * Getting Credential Reports * in the Using IAM guide. *

* * @param generateCredentialReportRequest Container for the necessary * parameters to execute the GenerateCredentialReport operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GenerateCredentialReport service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future generateCredentialReportAsync( final GenerateCredentialReportRequest generateCredentialReportRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GenerateCredentialReportResult call() throws Exception { GenerateCredentialReportResult result; try { result = generateCredentialReport(generateCredentialReportRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(generateCredentialReportRequest, result); return result; } }); } /** *

* Removes the specified user from the specified group. *

* * @param removeUserFromGroupRequest Container for the necessary * parameters to execute the RemoveUserFromGroup operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * RemoveUserFromGroup service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future removeUserFromGroupAsync(final RemoveUserFromGroupRequest removeUserFromGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { removeUserFromGroup(removeUserFromGroupRequest); return null; } }); } /** *

* Removes the specified user from the specified group. *

* * @param removeUserFromGroupRequest Container for the necessary * parameters to execute the RemoveUserFromGroup operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * RemoveUserFromGroup service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future removeUserFromGroupAsync( final RemoveUserFromGroupRequest removeUserFromGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { removeUserFromGroup(removeUserFromGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(removeUserFromGroupRequest, null); return null; } }); } /** *

* Deletes the specified role. The role must not have any policies * attached. For more information about roles, go to * Working with Roles * . *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the role you are about to delete. Deleting a role or * instance profile that is associated with a running instance will break * any applications running on the instance. *

* * @param deleteRoleRequest Container for the necessary parameters to * execute the DeleteRole operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteRole service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteRoleAsync(final DeleteRoleRequest deleteRoleRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteRole(deleteRoleRequest); return null; } }); } /** *

* Deletes the specified role. The role must not have any policies * attached. For more information about roles, go to * Working with Roles * . *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the role you are about to delete. Deleting a role or * instance profile that is associated with a running instance will break * any applications running on the instance. *

* * @param deleteRoleRequest Container for the necessary parameters to * execute the DeleteRole operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteRole service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteRoleAsync( final DeleteRoleRequest deleteRoleRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteRole(deleteRoleRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteRoleRequest, null); return null; } }); } /** *

* Deletes the specified server certificate. *

*

* IMPORTANT:If you are using a server certificate with Elastic * Load Balancing, deleting the certificate could have implications for * your application. If Elastic Load Balancing doesn't detect the * deletion of bound certificates, it may continue to use the * certificates. This could cause Elastic Load Balancing to stop * accepting traffic. We recommend that you remove the reference to the * certificate from Elastic Load Balancing before using this command to * delete the certificate. For more information, go to * DeleteLoadBalancerListeners in the Elastic Load Balancing API * Reference. *

* * @param deleteServerCertificateRequest Container for the necessary * parameters to execute the DeleteServerCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteServerCertificateAsync(final DeleteServerCertificateRequest deleteServerCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteServerCertificate(deleteServerCertificateRequest); return null; } }); } /** *

* Deletes the specified server certificate. *

*

* IMPORTANT:If you are using a server certificate with Elastic * Load Balancing, deleting the certificate could have implications for * your application. If Elastic Load Balancing doesn't detect the * deletion of bound certificates, it may continue to use the * certificates. This could cause Elastic Load Balancing to stop * accepting traffic. We recommend that you remove the reference to the * certificate from Elastic Load Balancing before using this command to * delete the certificate. For more information, go to * DeleteLoadBalancerListeners in the Elastic Load Balancing API * Reference. *

* * @param deleteServerCertificateRequest Container for the necessary * parameters to execute the DeleteServerCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteServerCertificateAsync( final DeleteServerCertificateRequest deleteServerCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteServerCertificate(deleteServerCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteServerCertificateRequest, null); return null; } }); } /** *

* Creates a new AWS secret access key and corresponding AWS access key * ID for the specified user. The default status for new keys is * Active . *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

*

* For information about limits on the number of keys you can create, * see * Limitations on IAM Entities * in the Using IAM guide. *

*

* IMPORTANT:To ensure the security of your AWS account, the * secret access key is accessible only during key and user creation. You * must save the key (for example, in a text file) if you want to be able * to access it again. If a secret key is lost, you can delete the access * keys for the associated user and then create new keys. *

* * @param createAccessKeyRequest Container for the necessary parameters * to execute the CreateAccessKey operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createAccessKeyAsync(final CreateAccessKeyRequest createAccessKeyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateAccessKeyResult call() throws Exception { return createAccessKey(createAccessKeyRequest); } }); } /** *

* Creates a new AWS secret access key and corresponding AWS access key * ID for the specified user. The default status for new keys is * Active . *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

*

* For information about limits on the number of keys you can create, * see * Limitations on IAM Entities * in the Using IAM guide. *

*

* IMPORTANT:To ensure the security of your AWS account, the * secret access key is accessible only during key and user creation. You * must save the key (for example, in a text file) if you want to be able * to access it again. If a secret key is lost, you can delete the access * keys for the associated user and then create new keys. *

* * @param createAccessKeyRequest Container for the necessary parameters * to execute the CreateAccessKey operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createAccessKeyAsync( final CreateAccessKeyRequest createAccessKeyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateAccessKeyResult call() throws Exception { CreateAccessKeyResult result; try { result = createAccessKey(createAccessKeyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createAccessKeyRequest, result); return result; } }); } /** *

* Retrieves information about the specified user, including the user's * path, unique ID, and ARN. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. *

* * @param getUserRequest Container for the necessary parameters to * execute the GetUser operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the GetUser * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getUserAsync(final GetUserRequest getUserRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetUserResult call() throws Exception { return getUser(getUserRequest); } }); } /** *

* Retrieves information about the specified user, including the user's * path, unique ID, and ARN. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. *

* * @param getUserRequest Container for the necessary parameters to * execute the GetUser operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the GetUser * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getUserAsync( final GetUserRequest getUserRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetUserResult call() throws Exception { GetUserResult result; try { result = getUser(getUserRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getUserRequest, result); return result; } }); } /** *

* Synchronizes the specified MFA device with AWS servers. *

* * @param resyncMFADeviceRequest Container for the necessary parameters * to execute the ResyncMFADevice operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ResyncMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future resyncMFADeviceAsync(final ResyncMFADeviceRequest resyncMFADeviceRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { resyncMFADevice(resyncMFADeviceRequest); return null; } }); } /** *

* Synchronizes the specified MFA device with AWS servers. *

* * @param resyncMFADeviceRequest Container for the necessary parameters * to execute the ResyncMFADevice operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ResyncMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future resyncMFADeviceAsync( final ResyncMFADeviceRequest resyncMFADeviceRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { resyncMFADevice(resyncMFADeviceRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(resyncMFADeviceRequest, null); return null; } }); } /** *

* Lists the MFA devices. If the request includes the user name, then * this action lists all the MFA devices associated with the specified * user name. If you do not specify a user name, IAM determines the user * name implicitly based on the AWS access key ID signing the request. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listMFADevicesRequest Container for the necessary parameters to * execute the ListMFADevices operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListMFADevices service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listMFADevicesAsync(final ListMFADevicesRequest listMFADevicesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListMFADevicesResult call() throws Exception { return listMFADevices(listMFADevicesRequest); } }); } /** *

* Lists the MFA devices. If the request includes the user name, then * this action lists all the MFA devices associated with the specified * user name. If you do not specify a user name, IAM determines the user * name implicitly based on the AWS access key ID signing the request. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listMFADevicesRequest Container for the necessary parameters to * execute the ListMFADevices operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListMFADevices service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listMFADevicesAsync( final ListMFADevicesRequest listMFADevicesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListMFADevicesResult call() throws Exception { ListMFADevicesResult result; try { result = listMFADevices(listMFADevicesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listMFADevicesRequest, result); return result; } }); } /** *

* Creates a new virtual MFA device for the AWS account. After creating * the virtual MFA, use * EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device * in the Using IAM guide. *

*

* For information about limits on the number of MFA devices you can * create, see * Limitations on Entities * in the Using IAM guide. *

*

* IMPORTANT:The seed information contained in the QR code and * the Base32 string should be treated like any other secret access * information, such as your AWS access keys or your passwords. After you * provision your virtual device, you should ensure that the information * is destroyed following secure procedures. *

* * @param createVirtualMFADeviceRequest Container for the necessary * parameters to execute the CreateVirtualMFADevice operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateVirtualMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createVirtualMFADeviceAsync(final CreateVirtualMFADeviceRequest createVirtualMFADeviceRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateVirtualMFADeviceResult call() throws Exception { return createVirtualMFADevice(createVirtualMFADeviceRequest); } }); } /** *

* Creates a new virtual MFA device for the AWS account. After creating * the virtual MFA, use * EnableMFADevice to attach the MFA device to an IAM user. For more information about creating and working with virtual MFA devices, go to Using a Virtual MFA Device * in the Using IAM guide. *

*

* For information about limits on the number of MFA devices you can * create, see * Limitations on Entities * in the Using IAM guide. *

*

* IMPORTANT:The seed information contained in the QR code and * the Base32 string should be treated like any other secret access * information, such as your AWS access keys or your passwords. After you * provision your virtual device, you should ensure that the information * is destroyed following secure procedures. *

* * @param createVirtualMFADeviceRequest Container for the necessary * parameters to execute the CreateVirtualMFADevice operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateVirtualMFADevice service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createVirtualMFADeviceAsync( final CreateVirtualMFADeviceRequest createVirtualMFADeviceRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateVirtualMFADeviceResult call() throws Exception { CreateVirtualMFADeviceResult result; try { result = createVirtualMFADevice(createVirtualMFADeviceRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createVirtualMFADeviceRequest, result); return result; } }); } /** *

* Lists the instance profiles that have the specified path prefix. If * there are none, the action returns an empty list. For more information * about instance profiles, go to * About Instance Profiles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listInstanceProfilesRequest Container for the necessary * parameters to execute the ListInstanceProfiles operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListInstanceProfiles service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listInstanceProfilesAsync(final ListInstanceProfilesRequest listInstanceProfilesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListInstanceProfilesResult call() throws Exception { return listInstanceProfiles(listInstanceProfilesRequest); } }); } /** *

* Lists the instance profiles that have the specified path prefix. If * there are none, the action returns an empty list. For more information * about instance profiles, go to * About Instance Profiles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listInstanceProfilesRequest Container for the necessary * parameters to execute the ListInstanceProfiles operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListInstanceProfiles service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listInstanceProfilesAsync( final ListInstanceProfilesRequest listInstanceProfilesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListInstanceProfilesResult call() throws Exception { ListInstanceProfilesResult result; try { result = listInstanceProfiles(listInstanceProfilesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listInstanceProfilesRequest, result); return result; } }); } /** *

* Changes the status of the specified access key from Active to * Inactive, or vice versa. This action can be used to disable a user's * key as part of a key rotation work flow. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* For information about rotating keys, see * Managing Keys and Certificates * in the Using IAM guide. *

* * @param updateAccessKeyRequest Container for the necessary parameters * to execute the UpdateAccessKey operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAccessKeyAsync(final UpdateAccessKeyRequest updateAccessKeyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateAccessKey(updateAccessKeyRequest); return null; } }); } /** *

* Changes the status of the specified access key from Active to * Inactive, or vice versa. This action can be used to disable a user's * key as part of a key rotation work flow. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* For information about rotating keys, see * Managing Keys and Certificates * in the Using IAM guide. *

* * @param updateAccessKeyRequest Container for the necessary parameters * to execute the UpdateAccessKey operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateAccessKey service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAccessKeyAsync( final UpdateAccessKeyRequest updateAccessKeyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateAccessKey(updateAccessKeyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateAccessKeyRequest, null); return null; } }); } /** *

* Adds the specified user to the specified group. *

* * @param addUserToGroupRequest Container for the necessary parameters to * execute the AddUserToGroup operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * AddUserToGroup service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future addUserToGroupAsync(final AddUserToGroupRequest addUserToGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { addUserToGroup(addUserToGroupRequest); return null; } }); } /** *

* Adds the specified user to the specified group. *

* * @param addUserToGroupRequest Container for the necessary parameters to * execute the AddUserToGroup operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * AddUserToGroup service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future addUserToGroupAsync( final AddUserToGroupRequest addUserToGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { addUserToGroup(addUserToGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(addUserToGroupRequest, null); return null; } }); } /** *

* Returns a list of users that are in the specified group. You can * paginate the results using the MaxItems and * Marker parameters. *

* * @param getGroupRequest Container for the necessary parameters to * execute the GetGroup operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the GetGroup * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getGroupAsync(final GetGroupRequest getGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetGroupResult call() throws Exception { return getGroup(getGroupRequest); } }); } /** *

* Returns a list of users that are in the specified group. You can * paginate the results using the MaxItems and * Marker parameters. *

* * @param getGroupRequest Container for the necessary parameters to * execute the GetGroup operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the GetGroup * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getGroupAsync( final GetGroupRequest getGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetGroupResult call() throws Exception { GetGroupResult result; try { result = getGroup(getGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getGroupRequest, result); return result; } }); } /** *

* Lists the account aliases associated with the account. For * information about using an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listAccountAliasesRequest Container for the necessary * parameters to execute the ListAccountAliases operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListAccountAliases service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listAccountAliasesAsync(final ListAccountAliasesRequest listAccountAliasesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListAccountAliasesResult call() throws Exception { return listAccountAliases(listAccountAliasesRequest); } }); } /** *

* Lists the account aliases associated with the account. For * information about using an AWS account alias, see * Using an Alias for Your AWS Account ID * in the Using IAM guide. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listAccountAliasesRequest Container for the necessary * parameters to execute the ListAccountAliases operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListAccountAliases service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listAccountAliasesAsync( final ListAccountAliasesRequest listAccountAliasesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListAccountAliasesResult call() throws Exception { ListAccountAliasesResult result; try { result = listAccountAliases(listAccountAliasesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listAccountAliasesRequest, result); return result; } }); } /** *

* Deletes the specified group. The group must not contain any users or * have any attached policies. *

* * @param deleteGroupRequest Container for the necessary parameters to * execute the DeleteGroup operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteGroupAsync(final DeleteGroupRequest deleteGroupRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteGroup(deleteGroupRequest); return null; } }); } /** *

* Deletes the specified group. The group must not contain any users or * have any attached policies. *

* * @param deleteGroupRequest Container for the necessary parameters to * execute the DeleteGroup operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteGroup service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteGroupAsync( final DeleteGroupRequest deleteGroupRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteGroup(deleteGroupRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteGroupRequest, null); return null; } }); } /** *

* Retrieves information about the specified role, including the role's * path, GUID, ARN, and the policy granting permission to assume the * role. For more information about ARNs, go to * ARNs . For more information about roles, go to Working with Roles * . *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getRoleRequest Container for the necessary parameters to * execute the GetRole operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the GetRole * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getRoleAsync(final GetRoleRequest getRoleRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetRoleResult call() throws Exception { return getRole(getRoleRequest); } }); } /** *

* Retrieves information about the specified role, including the role's * path, GUID, ARN, and the policy granting permission to assume the * role. For more information about ARNs, go to * ARNs . For more information about roles, go to Working with Roles * . *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getRoleRequest Container for the necessary parameters to * execute the GetRole operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the GetRole * service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getRoleAsync( final GetRoleRequest getRoleRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetRoleResult call() throws Exception { GetRoleResult result; try { result = getRole(getRoleRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getRoleRequest, result); return result; } }); } /** *

* Lists the names of the policies associated with the specified role. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listRolePoliciesRequest Container for the necessary parameters * to execute the ListRolePolicies operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListRolePolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listRolePoliciesAsync(final ListRolePoliciesRequest listRolePoliciesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListRolePoliciesResult call() throws Exception { return listRolePolicies(listRolePoliciesRequest); } }); } /** *

* Lists the names of the policies associated with the specified role. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listRolePoliciesRequest Container for the necessary parameters * to execute the ListRolePolicies operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListRolePolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listRolePoliciesAsync( final ListRolePoliciesRequest listRolePoliciesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListRolePoliciesResult call() throws Exception { ListRolePoliciesResult result; try { result = listRolePolicies(listRolePoliciesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listRolePoliciesRequest, result); return result; } }); } /** *

* Returns information about the signing certificates associated with * the specified user. If there are none, the action returns an empty * list. *

*

* Although each user is limited to a small number of signing * certificates, you can still paginate the results using the * MaxItems and Marker parameters. *

*

* If the UserName field is not specified, the user name is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

* * @param listSigningCertificatesRequest Container for the necessary * parameters to execute the ListSigningCertificates operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListSigningCertificates service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listSigningCertificatesAsync(final ListSigningCertificatesRequest listSigningCertificatesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListSigningCertificatesResult call() throws Exception { return listSigningCertificates(listSigningCertificatesRequest); } }); } /** *

* Returns information about the signing certificates associated with * the specified user. If there are none, the action returns an empty * list. *

*

* Although each user is limited to a small number of signing * certificates, you can still paginate the results using the * MaxItems and Marker parameters. *

*

* If the UserName field is not specified, the user name is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

* * @param listSigningCertificatesRequest Container for the necessary * parameters to execute the ListSigningCertificates operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListSigningCertificates service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listSigningCertificatesAsync( final ListSigningCertificatesRequest listSigningCertificatesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListSigningCertificatesResult call() throws Exception { ListSigningCertificatesResult result; try { result = listSigningCertificates(listSigningCertificatesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listSigningCertificatesRequest, result); return result; } }); } /** *

* Uploads an X.509 signing certificate and associates it with the * specified user. Some AWS services use X.509 signing certificates to * validate requests that are signed with a corresponding private key. * When you upload the certificate, its default status is * Active . *

*

* If the UserName field is not specified, the user name is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* NOTE:Because the body of a X.509 certificate can be large, you * should use POST rather than GET when calling UploadSigningCertificate. * For information about setting up signatures and authorization through * the API, go to Signing AWS API Requests in the AWS General Reference. * For general information about using the Query API with IAM, go to * Making Query Requests in the Using IAMguide. *

* * @param uploadSigningCertificateRequest Container for the necessary * parameters to execute the UploadSigningCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UploadSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future uploadSigningCertificateAsync(final UploadSigningCertificateRequest uploadSigningCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UploadSigningCertificateResult call() throws Exception { return uploadSigningCertificate(uploadSigningCertificateRequest); } }); } /** *

* Uploads an X.509 signing certificate and associates it with the * specified user. Some AWS services use X.509 signing certificates to * validate requests that are signed with a corresponding private key. * When you upload the certificate, its default status is * Active . *

*

* If the UserName field is not specified, the user name is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* NOTE:Because the body of a X.509 certificate can be large, you * should use POST rather than GET when calling UploadSigningCertificate. * For information about setting up signatures and authorization through * the API, go to Signing AWS API Requests in the AWS General Reference. * For general information about using the Query API with IAM, go to * Making Query Requests in the Using IAMguide. *

* * @param uploadSigningCertificateRequest Container for the necessary * parameters to execute the UploadSigningCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UploadSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future uploadSigningCertificateAsync( final UploadSigningCertificateRequest uploadSigningCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public UploadSigningCertificateResult call() throws Exception { UploadSigningCertificateResult result; try { result = uploadSigningCertificate(uploadSigningCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(uploadSigningCertificateRequest, result); return result; } }); } /** *

* Deletes the specified instance profile. The instance profile must not * have an associated role. *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the instance profile you are about to delete. Deleting a * role or instance profile that is associated with a running instance * will break any applications running on the instance. *

*

* For more information about instance profiles, go to * About Instance Profiles * . *

* * @param deleteInstanceProfileRequest Container for the necessary * parameters to execute the DeleteInstanceProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteInstanceProfileAsync(final DeleteInstanceProfileRequest deleteInstanceProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteInstanceProfile(deleteInstanceProfileRequest); return null; } }); } /** *

* Deletes the specified instance profile. The instance profile must not * have an associated role. *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the instance profile you are about to delete. Deleting a * role or instance profile that is associated with a running instance * will break any applications running on the instance. *

*

* For more information about instance profiles, go to * About Instance Profiles * . *

* * @param deleteInstanceProfileRequest Container for the necessary * parameters to execute the DeleteInstanceProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteInstanceProfileAsync( final DeleteInstanceProfileRequest deleteInstanceProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteInstanceProfile(deleteInstanceProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteInstanceProfileRequest, null); return null; } }); } /** *

* Creates a new role for your AWS account. For more information about * roles, go to * Working with Roles . For information about limitations on role names and the number of roles you can create, go to Limitations on IAM Entities * in the Using IAM guide. *

*

* The example policy grants permission to an EC2 instance to assume the * role. The policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param createRoleRequest Container for the necessary parameters to * execute the CreateRole operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateRole service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createRoleAsync(final CreateRoleRequest createRoleRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateRoleResult call() throws Exception { return createRole(createRoleRequest); } }); } /** *

* Creates a new role for your AWS account. For more information about * roles, go to * Working with Roles . For information about limitations on role names and the number of roles you can create, go to Limitations on IAM Entities * in the Using IAM guide. *

*

* The example policy grants permission to an EC2 instance to assume the * role. The policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param createRoleRequest Container for the necessary parameters to * execute the CreateRole operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateRole service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createRoleAsync( final CreateRoleRequest createRoleRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateRoleResult call() throws Exception { CreateRoleResult result; try { result = createRole(createRoleRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createRoleRequest, result); return result; } }); } /** *

* Returns the SAML provider metadocument that was uploaded when the * provider was created or updated. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param getSAMLProviderRequest Container for the necessary parameters * to execute the GetSAMLProvider operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getSAMLProviderAsync(final GetSAMLProviderRequest getSAMLProviderRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetSAMLProviderResult call() throws Exception { return getSAMLProvider(getSAMLProviderRequest); } }); } /** *

* Returns the SAML provider metadocument that was uploaded when the * provider was created or updated. *

*

* NOTE:This operation requires Signature Version 4. *

* * @param getSAMLProviderRequest Container for the necessary parameters * to execute the GetSAMLProvider operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getSAMLProviderAsync( final GetSAMLProviderRequest getSAMLProviderRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetSAMLProviderResult call() throws Exception { GetSAMLProviderResult result; try { result = getSAMLProvider(getSAMLProviderRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getSAMLProviderRequest, result); return result; } }); } /** *

* Changes the password for the specified user. *

* * @param updateLoginProfileRequest Container for the necessary * parameters to execute the UpdateLoginProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateLoginProfileAsync(final UpdateLoginProfileRequest updateLoginProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateLoginProfile(updateLoginProfileRequest); return null; } }); } /** *

* Changes the password for the specified user. *

* * @param updateLoginProfileRequest Container for the necessary * parameters to execute the UpdateLoginProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateLoginProfileAsync( final UpdateLoginProfileRequest updateLoginProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateLoginProfile(updateLoginProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateLoginProfileRequest, null); return null; } }); } /** *

* Deletes the password for the specified user, which terminates the * user's ability to access AWS services through the AWS Management * Console. *

*

* IMPORTANT:Deleting a user's password does not prevent a user * from accessing IAM through the command line interface or the API. To * prevent all user access you must also either make the access key * inactive or delete it. For more information about making keys inactive * or deleting them, see UpdateAccessKey and DeleteAccessKey. *

* * @param deleteLoginProfileRequest Container for the necessary * parameters to execute the DeleteLoginProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteLoginProfileAsync(final DeleteLoginProfileRequest deleteLoginProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteLoginProfile(deleteLoginProfileRequest); return null; } }); } /** *

* Deletes the password for the specified user, which terminates the * user's ability to access AWS services through the AWS Management * Console. *

*

* IMPORTANT:Deleting a user's password does not prevent a user * from accessing IAM through the command line interface or the API. To * prevent all user access you must also either make the access key * inactive or delete it. For more information about making keys inactive * or deleting them, see UpdateAccessKey and DeleteAccessKey. *

* * @param deleteLoginProfileRequest Container for the necessary * parameters to execute the DeleteLoginProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteLoginProfileAsync( final DeleteLoginProfileRequest deleteLoginProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteLoginProfile(deleteLoginProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteLoginProfileRequest, null); return null; } }); } /** *

* Changes the password of the IAM user calling * ChangePassword . The root account password is not * affected by this action. For information about modifying passwords, * see * Managing Passwords * in the Using IAM guide. *

* * @param changePasswordRequest Container for the necessary parameters to * execute the ChangePassword operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ChangePassword service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future changePasswordAsync(final ChangePasswordRequest changePasswordRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { changePassword(changePasswordRequest); return null; } }); } /** *

* Changes the password of the IAM user calling * ChangePassword . The root account password is not * affected by this action. For information about modifying passwords, * see * Managing Passwords * in the Using IAM guide. *

* * @param changePasswordRequest Container for the necessary parameters to * execute the ChangePassword operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ChangePassword service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future changePasswordAsync( final ChangePasswordRequest changePasswordRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { changePassword(changePasswordRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(changePasswordRequest, null); return null; } }); } /** *

* Retrieves information about the specified server certificate. *

* * @param getServerCertificateRequest Container for the necessary * parameters to execute the GetServerCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getServerCertificateAsync(final GetServerCertificateRequest getServerCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetServerCertificateResult call() throws Exception { return getServerCertificate(getServerCertificateRequest); } }); } /** *

* Retrieves information about the specified server certificate. *

* * @param getServerCertificateRequest Container for the necessary * parameters to execute the GetServerCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetServerCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getServerCertificateAsync( final GetServerCertificateRequest getServerCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetServerCertificateResult call() throws Exception { GetServerCertificateResult result; try { result = getServerCertificate(getServerCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getServerCertificateRequest, result); return result; } }); } /** *

* Adds (or updates) a policy document associated with the specified * group. For information about policies, refer to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the number of policies you can * associate with a group, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutGroupPolicy. For information * about setting up signatures and authorization through the API, go to * Signing AWS API Requests in the AWS General Reference. For general * information about using the Query API with IAM, go to Making Query * Requests in the Using IAM guide. *

* * @param putGroupPolicyRequest Container for the necessary parameters to * execute the PutGroupPolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * PutGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putGroupPolicyAsync(final PutGroupPolicyRequest putGroupPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { putGroupPolicy(putGroupPolicyRequest); return null; } }); } /** *

* Adds (or updates) a policy document associated with the specified * group. For information about policies, refer to * Overview of Policies * in the Using IAM guide. *

*

* For information about limits on the number of policies you can * associate with a group, see * Limitations on IAM Entities * in the Using IAM guide. *

*

* NOTE:Because policy documents can be large, you should use * POST rather than GET when calling PutGroupPolicy. For information * about setting up signatures and authorization through the API, go to * Signing AWS API Requests in the AWS General Reference. For general * information about using the Query API with IAM, go to Making Query * Requests in the Using IAM guide. *

* * @param putGroupPolicyRequest Container for the necessary parameters to * execute the PutGroupPolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * PutGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future putGroupPolicyAsync( final PutGroupPolicyRequest putGroupPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { putGroupPolicy(putGroupPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(putGroupPolicyRequest, null); return null; } }); } /** *

* Deletes the specified signing certificate associated with the * specified user. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

* * @param deleteSigningCertificateRequest Container for the necessary * parameters to execute the DeleteSigningCertificate operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteSigningCertificateAsync(final DeleteSigningCertificateRequest deleteSigningCertificateRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteSigningCertificate(deleteSigningCertificateRequest); return null; } }); } /** *

* Deletes the specified signing certificate associated with the * specified user. *

*

* If you do not specify a user name, IAM determines the user name * implicitly based on the AWS access key ID signing the request. Because * this action works for access keys under the AWS account, you can use * this API to manage root credentials even if the AWS account has no * associated users. *

* * @param deleteSigningCertificateRequest Container for the necessary * parameters to execute the DeleteSigningCertificate operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteSigningCertificate service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteSigningCertificateAsync( final DeleteSigningCertificateRequest deleteSigningCertificateRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteSigningCertificate(deleteSigningCertificateRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteSigningCertificateRequest, null); return null; } }); } /** *

* Lists the names of the policies associated with the specified user. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listUserPoliciesRequest Container for the necessary parameters * to execute the ListUserPolicies operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListUserPolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listUserPoliciesAsync(final ListUserPoliciesRequest listUserPoliciesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListUserPoliciesResult call() throws Exception { return listUserPolicies(listUserPoliciesRequest); } }); } /** *

* Lists the names of the policies associated with the specified user. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listUserPoliciesRequest Container for the necessary parameters * to execute the ListUserPolicies operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListUserPolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listUserPoliciesAsync( final ListUserPoliciesRequest listUserPoliciesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListUserPoliciesResult call() throws Exception { ListUserPoliciesResult result; try { result = listUserPolicies(listUserPoliciesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listUserPoliciesRequest, result); return result; } }); } /** *

* Returns information about the access key IDs associated with the * specified user. If there are none, the action returns an empty list. *

*

* Although each user is limited to a small number of keys, you can * still paginate the results using the MaxItems and * Marker parameters. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* NOTE:To ensure the security of your AWS account, the secret * access key is accessible only during key and user creation. *

* * @param listAccessKeysRequest Container for the necessary parameters to * execute the ListAccessKeys operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListAccessKeys service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listAccessKeysAsync(final ListAccessKeysRequest listAccessKeysRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListAccessKeysResult call() throws Exception { return listAccessKeys(listAccessKeysRequest); } }); } /** *

* Returns information about the access key IDs associated with the * specified user. If there are none, the action returns an empty list. *

*

* Although each user is limited to a small number of keys, you can * still paginate the results using the MaxItems and * Marker parameters. *

*

* If the UserName field is not specified, the UserName is * determined implicitly based on the AWS access key ID used to sign the * request. Because this action works for access keys under the AWS * account, this API can be used to manage root credentials even if the * AWS account has no associated users. *

*

* NOTE:To ensure the security of your AWS account, the secret * access key is accessible only during key and user creation. *

* * @param listAccessKeysRequest Container for the necessary parameters to * execute the ListAccessKeys operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListAccessKeys service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listAccessKeysAsync( final ListAccessKeysRequest listAccessKeysRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListAccessKeysResult call() throws Exception { ListAccessKeysResult result; try { result = listAccessKeys(listAccessKeysRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listAccessKeysRequest, result); return result; } }); } /** *

* Lists the groups the specified user belongs to. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupsForUserRequest Container for the necessary parameters * to execute the ListGroupsForUser operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListGroupsForUser service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupsForUserAsync(final ListGroupsForUserRequest listGroupsForUserRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupsForUserResult call() throws Exception { return listGroupsForUser(listGroupsForUserRequest); } }); } /** *

* Lists the groups the specified user belongs to. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupsForUserRequest Container for the necessary parameters * to execute the ListGroupsForUser operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListGroupsForUser service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupsForUserAsync( final ListGroupsForUserRequest listGroupsForUserRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupsForUserResult call() throws Exception { ListGroupsForUserResult result; try { result = listGroupsForUser(listGroupsForUserRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listGroupsForUserRequest, result); return result; } }); } /** *

* Adds the specified role to the specified instance profile. For more * information about roles, go to * Working with Roles . For more information about instance profiles, go to About Instance Profiles * . *

* * @param addRoleToInstanceProfileRequest Container for the necessary * parameters to execute the AddRoleToInstanceProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * AddRoleToInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future addRoleToInstanceProfileAsync(final AddRoleToInstanceProfileRequest addRoleToInstanceProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { addRoleToInstanceProfile(addRoleToInstanceProfileRequest); return null; } }); } /** *

* Adds the specified role to the specified instance profile. For more * information about roles, go to * Working with Roles . For more information about instance profiles, go to About Instance Profiles * . *

* * @param addRoleToInstanceProfileRequest Container for the necessary * parameters to execute the AddRoleToInstanceProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * AddRoleToInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future addRoleToInstanceProfileAsync( final AddRoleToInstanceProfileRequest addRoleToInstanceProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { addRoleToInstanceProfile(addRoleToInstanceProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(addRoleToInstanceProfileRequest, null); return null; } }); } /** *

* Retrieves the specified policy document for the specified group. The * returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getGroupPolicyRequest Container for the necessary parameters to * execute the GetGroupPolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getGroupPolicyAsync(final GetGroupPolicyRequest getGroupPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetGroupPolicyResult call() throws Exception { return getGroupPolicy(getGroupPolicyRequest); } }); } /** *

* Retrieves the specified policy document for the specified group. The * returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getGroupPolicyRequest Container for the necessary parameters to * execute the GetGroupPolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetGroupPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getGroupPolicyAsync( final GetGroupPolicyRequest getGroupPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetGroupPolicyResult call() throws Exception { GetGroupPolicyResult result; try { result = getGroupPolicy(getGroupPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getGroupPolicyRequest, result); return result; } }); } /** *

* Retrieves the specified policy document for the specified role. For * more information about roles, go to * Working with Roles * . *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getRolePolicyRequest Container for the necessary parameters to * execute the GetRolePolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetRolePolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getRolePolicyAsync(final GetRolePolicyRequest getRolePolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetRolePolicyResult call() throws Exception { return getRolePolicy(getRolePolicyRequest); } }); } /** *

* Retrieves the specified policy document for the specified role. For * more information about roles, go to * Working with Roles * . *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param getRolePolicyRequest Container for the necessary parameters to * execute the GetRolePolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetRolePolicy service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getRolePolicyAsync( final GetRolePolicyRequest getRolePolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetRolePolicyResult call() throws Exception { GetRolePolicyResult result; try { result = getRolePolicy(getRolePolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getRolePolicyRequest, result); return result; } }); } /** *

* Lists the instance profiles that have the specified associated role. * If there are none, the action returns an empty list. For more * information about instance profiles, go to * About Instance Profiles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listInstanceProfilesForRoleRequest Container for the necessary * parameters to execute the ListInstanceProfilesForRole operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListInstanceProfilesForRole service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listInstanceProfilesForRoleAsync(final ListInstanceProfilesForRoleRequest listInstanceProfilesForRoleRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListInstanceProfilesForRoleResult call() throws Exception { return listInstanceProfilesForRole(listInstanceProfilesForRoleRequest); } }); } /** *

* Lists the instance profiles that have the specified associated role. * If there are none, the action returns an empty list. For more * information about instance profiles, go to * About Instance Profiles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listInstanceProfilesForRoleRequest Container for the necessary * parameters to execute the ListInstanceProfilesForRole operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListInstanceProfilesForRole service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listInstanceProfilesForRoleAsync( final ListInstanceProfilesForRoleRequest listInstanceProfilesForRoleRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListInstanceProfilesForRoleResult call() throws Exception { ListInstanceProfilesForRoleResult result; try { result = listInstanceProfilesForRole(listInstanceProfilesForRoleRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listInstanceProfilesForRoleRequest, result); return result; } }); } /** *

* Lists the virtual MFA devices under the AWS account by assignment * status. If you do not specify an assignment status, the action returns * a list of all virtual MFA devices. Assignment status can be * Assigned , Unassigned , or Any * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listVirtualMFADevicesRequest Container for the necessary * parameters to execute the ListVirtualMFADevices operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListVirtualMFADevices service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listVirtualMFADevicesAsync(final ListVirtualMFADevicesRequest listVirtualMFADevicesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListVirtualMFADevicesResult call() throws Exception { return listVirtualMFADevices(listVirtualMFADevicesRequest); } }); } /** *

* Lists the virtual MFA devices under the AWS account by assignment * status. If you do not specify an assignment status, the action returns * a list of all virtual MFA devices. Assignment status can be * Assigned , Unassigned , or Any * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listVirtualMFADevicesRequest Container for the necessary * parameters to execute the ListVirtualMFADevices operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListVirtualMFADevices service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listVirtualMFADevicesAsync( final ListVirtualMFADevicesRequest listVirtualMFADevicesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListVirtualMFADevicesResult call() throws Exception { ListVirtualMFADevicesResult result; try { result = listVirtualMFADevices(listVirtualMFADevicesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listVirtualMFADevicesRequest, result); return result; } }); } /** *

* Deletes the specified policy associated with the specified role. *

* * @param deleteRolePolicyRequest Container for the necessary parameters * to execute the DeleteRolePolicy operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * DeleteRolePolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteRolePolicyAsync(final DeleteRolePolicyRequest deleteRolePolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { deleteRolePolicy(deleteRolePolicyRequest); return null; } }); } /** *

* Deletes the specified policy associated with the specified role. *

* * @param deleteRolePolicyRequest Container for the necessary parameters * to execute the DeleteRolePolicy operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * DeleteRolePolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future deleteRolePolicyAsync( final DeleteRolePolicyRequest deleteRolePolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { deleteRolePolicy(deleteRolePolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(deleteRolePolicyRequest, null); return null; } }); } /** *

* Creates a new instance profile. For information about instance * profiles, go to * About Instance Profiles * . *

*

* For information about the number of instance profiles you can create, * see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createInstanceProfileRequest Container for the necessary * parameters to execute the CreateInstanceProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createInstanceProfileAsync(final CreateInstanceProfileRequest createInstanceProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateInstanceProfileResult call() throws Exception { return createInstanceProfile(createInstanceProfileRequest); } }); } /** *

* Creates a new instance profile. For information about instance * profiles, go to * About Instance Profiles * . *

*

* For information about the number of instance profiles you can create, * see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param createInstanceProfileRequest Container for the necessary * parameters to execute the CreateInstanceProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createInstanceProfileAsync( final CreateInstanceProfileRequest createInstanceProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateInstanceProfileResult call() throws Exception { CreateInstanceProfileResult result; try { result = createInstanceProfile(createInstanceProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createInstanceProfileRequest, result); return result; } }); } /** *

* Lists the names of the policies associated with the specified group. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupPoliciesRequest Container for the necessary parameters * to execute the ListGroupPolicies operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListGroupPolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupPoliciesAsync(final ListGroupPoliciesRequest listGroupPoliciesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupPoliciesResult call() throws Exception { return listGroupPolicies(listGroupPoliciesRequest); } }); } /** *

* Lists the names of the policies associated with the specified group. * If there are none, the action returns an empty list. *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

* * @param listGroupPoliciesRequest Container for the necessary parameters * to execute the ListGroupPolicies operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListGroupPolicies service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listGroupPoliciesAsync( final ListGroupPoliciesRequest listGroupPoliciesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListGroupPoliciesResult call() throws Exception { ListGroupPoliciesResult result; try { result = listGroupPolicies(listGroupPoliciesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listGroupPoliciesRequest, result); return result; } }); } /** *

* Creates a password for the specified user, giving the user the * ability to access AWS services through the AWS Management Console. For * more information about managing passwords, see * Managing Passwords * in the Using IAM guide. *

* * @param createLoginProfileRequest Container for the necessary * parameters to execute the CreateLoginProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createLoginProfileAsync(final CreateLoginProfileRequest createLoginProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateLoginProfileResult call() throws Exception { return createLoginProfile(createLoginProfileRequest); } }); } /** *

* Creates a password for the specified user, giving the user the * ability to access AWS services through the AWS Management Console. For * more information about managing passwords, see * Managing Passwords * in the Using IAM guide. *

* * @param createLoginProfileRequest Container for the necessary * parameters to execute the CreateLoginProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateLoginProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createLoginProfileAsync( final CreateLoginProfileRequest createLoginProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateLoginProfileResult call() throws Exception { CreateLoginProfileResult result; try { result = createLoginProfile(createLoginProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createLoginProfileRequest, result); return result; } }); } /** *

* Removes the specified role from the specified instance profile. *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the role you are about to remove from the instance * profile. Removing a role from an instance profile that is associated * with a running instance will break any applications running on the * instance. *

*

* For more information about roles, go to * Working with Roles . For more information about instance profiles, go to About Instance Profiles * . *

* * @param removeRoleFromInstanceProfileRequest Container for the * necessary parameters to execute the RemoveRoleFromInstanceProfile * operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * RemoveRoleFromInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future removeRoleFromInstanceProfileAsync(final RemoveRoleFromInstanceProfileRequest removeRoleFromInstanceProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { removeRoleFromInstanceProfile(removeRoleFromInstanceProfileRequest); return null; } }); } /** *

* Removes the specified role from the specified instance profile. *

*

* IMPORTANT:Make sure you do not have any Amazon EC2 instances * running with the role you are about to remove from the instance * profile. Removing a role from an instance profile that is associated * with a running instance will break any applications running on the * instance. *

*

* For more information about roles, go to * Working with Roles . For more information about instance profiles, go to About Instance Profiles * . *

* * @param removeRoleFromInstanceProfileRequest Container for the * necessary parameters to execute the RemoveRoleFromInstanceProfile * operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * RemoveRoleFromInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future removeRoleFromInstanceProfileAsync( final RemoveRoleFromInstanceProfileRequest removeRoleFromInstanceProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { removeRoleFromInstanceProfile(removeRoleFromInstanceProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(removeRoleFromInstanceProfileRequest, null); return null; } }); } /** *

* Updates the password policy settings for the account. For more * information about using a password policy, see * Managing an IAM Password Policy * in the Using IAM guide. *

* * @param updateAccountPasswordPolicyRequest Container for the necessary * parameters to execute the UpdateAccountPasswordPolicy operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAccountPasswordPolicyAsync(final UpdateAccountPasswordPolicyRequest updateAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateAccountPasswordPolicy(updateAccountPasswordPolicyRequest); return null; } }); } /** *

* Updates the password policy settings for the account. For more * information about using a password policy, see * Managing an IAM Password Policy * in the Using IAM guide. *

* * @param updateAccountPasswordPolicyRequest Container for the necessary * parameters to execute the UpdateAccountPasswordPolicy operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAccountPasswordPolicyAsync( final UpdateAccountPasswordPolicyRequest updateAccountPasswordPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateAccountPasswordPolicy(updateAccountPasswordPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateAccountPasswordPolicyRequest, null); return null; } }); } /** *

* Updates the policy that grants an entity permission to assume a role. * For more information about roles, go to * Working with Roles * . *

* * @param updateAssumeRolePolicyRequest Container for the necessary * parameters to execute the UpdateAssumeRolePolicy operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * UpdateAssumeRolePolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAssumeRolePolicyAsync(final UpdateAssumeRolePolicyRequest updateAssumeRolePolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { updateAssumeRolePolicy(updateAssumeRolePolicyRequest); return null; } }); } /** *

* Updates the policy that grants an entity permission to assume a role. * For more information about roles, go to * Working with Roles * . *

* * @param updateAssumeRolePolicyRequest Container for the necessary * parameters to execute the UpdateAssumeRolePolicy operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * UpdateAssumeRolePolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future updateAssumeRolePolicyAsync( final UpdateAssumeRolePolicyRequest updateAssumeRolePolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public Void call() throws Exception { try { updateAssumeRolePolicy(updateAssumeRolePolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(updateAssumeRolePolicyRequest, null); return null; } }); } /** *

* Retrieves information about the specified instance profile, including * the instance profile's path, GUID, ARN, and role. For more information * about instance profiles, go to * About Instance Profiles . For more information about ARNs, go to ARNs * . *

* * @param getInstanceProfileRequest Container for the necessary * parameters to execute the GetInstanceProfile operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getInstanceProfileAsync(final GetInstanceProfileRequest getInstanceProfileRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetInstanceProfileResult call() throws Exception { return getInstanceProfile(getInstanceProfileRequest); } }); } /** *

* Retrieves information about the specified instance profile, including * the instance profile's path, GUID, ARN, and role. For more information * about instance profiles, go to * About Instance Profiles . For more information about ARNs, go to ARNs * . *

* * @param getInstanceProfileRequest Container for the necessary * parameters to execute the GetInstanceProfile operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetInstanceProfile service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getInstanceProfileAsync( final GetInstanceProfileRequest getInstanceProfileRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetInstanceProfileResult call() throws Exception { GetInstanceProfileResult result; try { result = getInstanceProfile(getInstanceProfileRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getInstanceProfileRequest, result); return result; } }); } /** *

* Lists the roles that have the specified path prefix. If there are * none, the action returns an empty list. For more information about * roles, go to * Working with Roles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param listRolesRequest Container for the necessary parameters to * execute the ListRoles operation on AmazonIdentityManagement. * * @return A Java Future object containing the response from the * ListRoles service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listRolesAsync(final ListRolesRequest listRolesRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListRolesResult call() throws Exception { return listRoles(listRolesRequest); } }); } /** *

* Lists the roles that have the specified path prefix. If there are * none, the action returns an empty list. For more information about * roles, go to * Working with Roles * . *

*

* You can paginate the results using the MaxItems and * Marker parameters. *

*

* The returned policy is URL-encoded according to RFC 3986. For more * information about RFC 3986, go to * http://www.faqs.org/rfcs/rfc3986.html * . *

* * @param listRolesRequest Container for the necessary parameters to * execute the ListRoles operation on AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * ListRoles service method, as returned by AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future listRolesAsync( final ListRolesRequest listRolesRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public ListRolesResult call() throws Exception { ListRolesResult result; try { result = listRoles(listRolesRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(listRolesRequest, result); return result; } }); } /** *

* Retrieves account level information about account entity usage and * IAM quotas. *

*

* For information about limitations on IAM entities, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param getAccountSummaryRequest Container for the necessary parameters * to execute the GetAccountSummary operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetAccountSummary service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getAccountSummaryAsync(final GetAccountSummaryRequest getAccountSummaryRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetAccountSummaryResult call() throws Exception { return getAccountSummary(getAccountSummaryRequest); } }); } /** *

* Retrieves account level information about account entity usage and * IAM quotas. *

*

* For information about limitations on IAM entities, see * Limitations on IAM Entities * in the Using IAM guide. *

* * @param getAccountSummaryRequest Container for the necessary parameters * to execute the GetAccountSummary operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetAccountSummary service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getAccountSummaryAsync( final GetAccountSummaryRequest getAccountSummaryRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetAccountSummaryResult call() throws Exception { GetAccountSummaryResult result; try { result = getAccountSummary(getAccountSummaryRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getAccountSummaryRequest, result); return result; } }); } /** *

* Creates an IAM entity to describe an identity provider (IdP) that * supports SAML 2.0. *

*

* The SAML provider that you create with this operation can be used as * a principal in a role's trust policy to establish a trust relationship * between AWS and a SAML identity provider. You can create an IAM role * that supports Web-based single sign-on (SSO) to the AWS Management * Console or one that supports API access to AWS. *

*

* When you create the SAML provider, you upload an a SAML metadata * document that you get from your IdP and that includes the issuer's * name, expiration information, and keys that can be used to validate * the SAML authentication response (assertions) that are received from * the IdP. You must generate the metadata document using the identity * management software that is used as your organization's IdP. *

*

* NOTE:This operation requires Signature Version 4. *

*

* For more information, see * Giving Console Access Using SAML and Creating Temporary Security Credentials for SAML Federation * in the Using Temporary Credentials guide. *

* * @param createSAMLProviderRequest Container for the necessary * parameters to execute the CreateSAMLProvider operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * CreateSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createSAMLProviderAsync(final CreateSAMLProviderRequest createSAMLProviderRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateSAMLProviderResult call() throws Exception { return createSAMLProvider(createSAMLProviderRequest); } }); } /** *

* Creates an IAM entity to describe an identity provider (IdP) that * supports SAML 2.0. *

*

* The SAML provider that you create with this operation can be used as * a principal in a role's trust policy to establish a trust relationship * between AWS and a SAML identity provider. You can create an IAM role * that supports Web-based single sign-on (SSO) to the AWS Management * Console or one that supports API access to AWS. *

*

* When you create the SAML provider, you upload an a SAML metadata * document that you get from your IdP and that includes the issuer's * name, expiration information, and keys that can be used to validate * the SAML authentication response (assertions) that are received from * the IdP. You must generate the metadata document using the identity * management software that is used as your organization's IdP. *

*

* NOTE:This operation requires Signature Version 4. *

*

* For more information, see * Giving Console Access Using SAML and Creating Temporary Security Credentials for SAML Federation * in the Using Temporary Credentials guide. *

* * @param createSAMLProviderRequest Container for the necessary * parameters to execute the CreateSAMLProvider operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * CreateSAMLProvider service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future createSAMLProviderAsync( final CreateSAMLProviderRequest createSAMLProviderRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public CreateSAMLProviderResult call() throws Exception { CreateSAMLProviderResult result; try { result = createSAMLProvider(createSAMLProviderRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(createSAMLProviderRequest, result); return result; } }); } /** *

* Retrieves the password policy for the AWS account. For more * information about using a password policy, go to * Managing an IAM Password Policy * . *

* * @param getAccountPasswordPolicyRequest Container for the necessary * parameters to execute the GetAccountPasswordPolicy operation on * AmazonIdentityManagement. * * @return A Java Future object containing the response from the * GetAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getAccountPasswordPolicyAsync(final GetAccountPasswordPolicyRequest getAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetAccountPasswordPolicyResult call() throws Exception { return getAccountPasswordPolicy(getAccountPasswordPolicyRequest); } }); } /** *

* Retrieves the password policy for the AWS account. For more * information about using a password policy, go to * Managing an IAM Password Policy * . *

* * @param getAccountPasswordPolicyRequest Container for the necessary * parameters to execute the GetAccountPasswordPolicy operation on * AmazonIdentityManagement. * @param asyncHandler Asynchronous callback handler for events in the * life-cycle of the request. Users could provide the implementation of * the four callback methods in this interface to process the operation * result or handle the exception. * * @return A Java Future object containing the response from the * GetAccountPasswordPolicy service method, as returned by * AmazonIdentityManagement. * * * @throws AmazonClientException * If any internal errors are encountered inside the client while * attempting to make the request or handle the response. For example * if a network connection is not available. * @throws AmazonServiceException * If an error response is returned by AmazonIdentityManagement indicating * either a problem with the data in the request, or a server side issue. */ public Future getAccountPasswordPolicyAsync( final GetAccountPasswordPolicyRequest getAccountPasswordPolicyRequest, final AsyncHandler asyncHandler) throws AmazonServiceException, AmazonClientException { return executorService.submit(new Callable() { public GetAccountPasswordPolicyResult call() throws Exception { GetAccountPasswordPolicyResult result; try { result = getAccountPasswordPolicy(getAccountPasswordPolicyRequest); } catch (Exception ex) { asyncHandler.onError(ex); throw ex; } asyncHandler.onSuccess(getAccountPasswordPolicyRequest, result); return result; } }); } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy