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

com.amazonaws.services.identitymanagement.AmazonIdentityManagement 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 com.amazonaws.*;
import com.amazonaws.regions.*;
import com.amazonaws.services.identitymanagement.model.*;

/**
 * Interface for accessing AmazonIdentityManagement.
 * 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 interface AmazonIdentityManagement { /** * Overrides the default endpoint for this client ("https://iam.amazonaws.com"). * Callers can use this method to control which AWS region they want to work with. *

* Callers can pass in just the endpoint (ex: "iam.amazonaws.com") or a full * URL, including the protocol (ex: "https://iam.amazonaws.com"). If the * protocol is not specified here, the default protocol from this client's * {@link ClientConfiguration} will be used, which by default is HTTPS. *

* For more information on using AWS regions with the AWS SDK for Java, and * a complete list of all available endpoints for all AWS services, see: * * http://developer.amazonwebservices.com/connect/entry.jspa?externalID=3912 *

* This method is not threadsafe. An endpoint should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param endpoint * The endpoint (ex: "iam.amazonaws.com") or a full URL, * including the protocol (ex: "https://iam.amazonaws.com") of * the region specific AWS endpoint this client will communicate * with. * * @throws IllegalArgumentException * If any problems are detected with the specified endpoint. */ public void setEndpoint(String endpoint) throws java.lang.IllegalArgumentException; /** * An alternative to {@link AmazonIdentityManagement#setEndpoint(String)}, sets the * regional endpoint for this client's service calls. Callers can use this * method to control which AWS region they want to work with. *

* By default, all service endpoints in all regions use the https protocol. * To use http instead, specify it in the {@link ClientConfiguration} * supplied at construction. *

* This method is not threadsafe. A region should be configured when the * client is created and before any service requests are made. Changing it * afterwards creates inevitable race conditions for any service requests in * transit or retrying. * * @param region * The region this client will communicate with. See * {@link Region#getRegion(com.amazonaws.regions.Regions)} for * accessing a given region. * @throws java.lang.IllegalArgumentException * If the given region is null, or if this service isn't * available in the given region. See * {@link Region#isServiceSupported(String)} * @see Region#getRegion(com.amazonaws.regions.Regions) * @see Region#createClient(Class, com.amazonaws.auth.AWSCredentialsProvider, ClientConfiguration) */ public void setRegion(Region region) throws java.lang.IllegalArgumentException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteAccountAlias(DeleteAccountAliasRequest deleteAccountAliasRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return 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 ListGroupsResult listGroups(ListGroupsRequest listGroupsRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteAccessKey(DeleteAccessKeyRequest deleteAccessKeyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteVirtualMFADevice(DeleteVirtualMFADeviceRequest deleteVirtualMFADeviceRequest) throws AmazonServiceException, AmazonClientException; /** *

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

* * @param deleteUserPolicyRequest Container for the necessary parameters * to execute the DeleteUserPolicy service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteUserPolicy(DeleteUserPolicyRequest deleteUserPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws MalformedPolicyDocumentException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void putUserPolicy(PutUserPolicyRequest putUserPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 ListServerCertificatesResult listServerCertificates(ListServerCertificatesRequest listServerCertificatesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 ListSAMLProvidersResult listSAMLProviders(ListSAMLProvidersRequest listSAMLProvidersRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetUserPolicy service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetUserPolicyResult getUserPolicy(GetUserPolicyRequest getUserPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void updateServerCertificate(UpdateServerCertificateRequest updateServerCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void updateUser(UpdateUserRequest updateUserRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws MalformedPolicyDocumentException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void putRolePolicy(PutRolePolicyRequest putRolePolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void updateSigningCertificate(UpdateSigningCertificateRequest updateSigningCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

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

* * @param deleteGroupPolicyRequest Container for the necessary parameters * to execute the DeleteGroupPolicy service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteGroupPolicy(DeleteGroupPolicyRequest deleteGroupPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return 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 ListUsersResult listUsers(ListUsersRequest listUsersRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void updateGroup(UpdateGroupRequest updateGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the CreateUser service method, as returned * by AmazonIdentityManagement. * * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateUserResult createUser(CreateUserRequest createUserRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws InvalidInputException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteSAMLProvider(DeleteSAMLProviderRequest deleteSAMLProviderRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GetCredentialReport service method, as * returned by AmazonIdentityManagement. * * @throws CredentialReportNotPresentException * @throws CredentialReportNotReadyException * @throws CredentialReportExpiredException * * @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 GetCredentialReportResult getCredentialReport(GetCredentialReportRequest getCredentialReportRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws InvalidAuthenticationCodeException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void enableMFADevice(EnableMFADeviceRequest enableMFADeviceRequest) throws AmazonServiceException, AmazonClientException; /** *

* Deletes the password policy for the AWS account. *

* * @param deleteAccountPasswordPolicyRequest Container for the necessary * parameters to execute the DeleteAccountPasswordPolicy service method * on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteAccountPasswordPolicy(DeleteAccountPasswordPolicyRequest deleteAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GetLoginProfile service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetLoginProfileResult getLoginProfile(GetLoginProfileRequest getLoginProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the UpdateSAMLProvider service method, as * returned by AmazonIdentityManagement. * * @throws InvalidInputException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 UpdateSAMLProviderResult updateSAMLProvider(UpdateSAMLProviderRequest updateSAMLProviderRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the UploadServerCertificate service method, * as returned by AmazonIdentityManagement. * * @throws KeyPairMismatchException * @throws MalformedCertificateException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 UploadServerCertificateResult uploadServerCertificate(UploadServerCertificateRequest uploadServerCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the CreateGroup service method, as returned * by AmazonIdentityManagement. * * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateGroupResult createGroup(CreateGroupRequest createGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void createAccountAlias(CreateAccountAliasRequest createAccountAliasRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteUser(DeleteUserRequest deleteUserRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deactivateMFADevice(DeactivateMFADeviceRequest deactivateMFADeviceRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GenerateCredentialReport service method, * as returned by AmazonIdentityManagement. * * @throws LimitExceededException * * @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 GenerateCredentialReportResult generateCredentialReport(GenerateCredentialReportRequest generateCredentialReportRequest) throws AmazonServiceException, AmazonClientException; /** *

* Removes the specified user from the specified group. *

* * @param removeUserFromGroupRequest Container for the necessary * parameters to execute the RemoveUserFromGroup service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void removeUserFromGroup(RemoveUserFromGroupRequest removeUserFromGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteRole(DeleteRoleRequest deleteRoleRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteServerCertificate(DeleteServerCertificateRequest deleteServerCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the CreateAccessKey service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 CreateAccessKeyResult createAccessKey(CreateAccessKeyRequest createAccessKeyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetUser service method, as returned by * AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetUserResult getUser(GetUserRequest getUserRequest) throws AmazonServiceException, AmazonClientException; /** *

* Synchronizes the specified MFA device with AWS servers. *

* * @param resyncMFADeviceRequest Container for the necessary parameters * to execute the ResyncMFADevice service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws InvalidAuthenticationCodeException * @throws LimitExceededException * * @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 void resyncMFADevice(ResyncMFADeviceRequest resyncMFADeviceRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the ListMFADevices service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListMFADevicesResult listMFADevices(ListMFADevicesRequest listMFADevicesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the CreateVirtualMFADevice service method, * as returned by AmazonIdentityManagement. * * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateVirtualMFADeviceResult createVirtualMFADevice(CreateVirtualMFADeviceRequest createVirtualMFADeviceRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 ListInstanceProfilesResult listInstanceProfiles(ListInstanceProfilesRequest listInstanceProfilesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void updateAccessKey(UpdateAccessKeyRequest updateAccessKeyRequest) throws AmazonServiceException, AmazonClientException; /** *

* Adds the specified user to the specified group. *

* * @param addUserToGroupRequest Container for the necessary parameters to * execute the AddUserToGroup service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void addUserToGroup(AddUserToGroupRequest addUserToGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetGroup service method, as returned by * AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetGroupResult getGroup(GetGroupRequest getGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 ListAccountAliasesResult listAccountAliases(ListAccountAliasesRequest listAccountAliasesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteGroup(DeleteGroupRequest deleteGroupRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetRole service method, as returned by * AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetRoleResult getRole(GetRoleRequest getRoleRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the ListRolePolicies service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListRolePoliciesResult listRolePolicies(ListRolePoliciesRequest listRolePoliciesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the ListSigningCertificates service method, * as returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListSigningCertificatesResult listSigningCertificates(ListSigningCertificatesRequest listSigningCertificatesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the UploadSigningCertificate service method, * as returned by AmazonIdentityManagement. * * @throws DuplicateCertificateException * @throws InvalidCertificateException * @throws MalformedCertificateException * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 UploadSigningCertificateResult uploadSigningCertificate(UploadSigningCertificateRequest uploadSigningCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws DeleteConflictException * @throws LimitExceededException * * @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 void deleteInstanceProfile(DeleteInstanceProfileRequest deleteInstanceProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the CreateRole service method, as returned * by AmazonIdentityManagement. * * @throws MalformedPolicyDocumentException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateRoleResult createRole(CreateRoleRequest createRoleRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GetSAMLProvider service method, as * returned by AmazonIdentityManagement. * * @throws InvalidInputException * @throws NoSuchEntityException * * @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 GetSAMLProviderResult getSAMLProvider(GetSAMLProviderRequest getSAMLProviderRequest) throws AmazonServiceException, AmazonClientException; /** *

* Changes the password for the specified user. *

* * @param updateLoginProfileRequest Container for the necessary * parameters to execute the UpdateLoginProfile service method on * AmazonIdentityManagement. * * * @throws PasswordPolicyViolationException * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void updateLoginProfile(UpdateLoginProfileRequest updateLoginProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteLoginProfile(DeleteLoginProfileRequest deleteLoginProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws PasswordPolicyViolationException * @throws EntityTemporarilyUnmodifiableException * @throws NoSuchEntityException * @throws LimitExceededException * @throws InvalidUserTypeException * * @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 void changePassword(ChangePasswordRequest changePasswordRequest) throws AmazonServiceException, AmazonClientException; /** *

* Retrieves information about the specified server certificate. *

* * @param getServerCertificateRequest Container for the necessary * parameters to execute the GetServerCertificate service method on * AmazonIdentityManagement. * * @return The response from the GetServerCertificate service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetServerCertificateResult getServerCertificate(GetServerCertificateRequest getServerCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * * @throws MalformedPolicyDocumentException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void putGroupPolicy(PutGroupPolicyRequest putGroupPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteSigningCertificate(DeleteSigningCertificateRequest deleteSigningCertificateRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the ListUserPolicies service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListUserPoliciesResult listUserPolicies(ListUserPoliciesRequest listUserPoliciesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the ListAccessKeys service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListAccessKeysResult listAccessKeys(ListAccessKeysRequest listAccessKeysRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the ListGroupsForUser service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListGroupsForUserResult listGroupsForUser(ListGroupsForUserRequest listGroupsForUserRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 void addRoleToInstanceProfile(AddRoleToInstanceProfileRequest addRoleToInstanceProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetGroupPolicy service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetGroupPolicyResult getGroupPolicy(GetGroupPolicyRequest getGroupPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return The response from the GetRolePolicy service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetRolePolicyResult getRolePolicy(GetRolePolicyRequest getRolePolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method * on AmazonIdentityManagement. * * @return The response from the ListInstanceProfilesForRole service * method, as returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListInstanceProfilesForRoleResult listInstanceProfilesForRole(ListInstanceProfilesForRoleRequest listInstanceProfilesForRoleRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 ListVirtualMFADevicesResult listVirtualMFADevices(ListVirtualMFADevicesRequest listVirtualMFADevicesRequest) throws AmazonServiceException, AmazonClientException; /** *

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

* * @param deleteRolePolicyRequest Container for the necessary parameters * to execute the DeleteRolePolicy service method on * AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteRolePolicy(DeleteRolePolicyRequest deleteRolePolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the CreateInstanceProfile service method, as * returned by AmazonIdentityManagement. * * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateInstanceProfileResult createInstanceProfile(CreateInstanceProfileRequest createInstanceProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the ListGroupPolicies service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListGroupPoliciesResult listGroupPolicies(ListGroupPoliciesRequest listGroupPoliciesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the CreateLoginProfile service method, as * returned by AmazonIdentityManagement. * * @throws PasswordPolicyViolationException * @throws NoSuchEntityException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateLoginProfileResult createLoginProfile(CreateLoginProfileRequest createLoginProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 * service method on AmazonIdentityManagement. * * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void removeRoleFromInstanceProfile(RemoveRoleFromInstanceProfileRequest removeRoleFromInstanceProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method * on AmazonIdentityManagement. * * * @throws MalformedPolicyDocumentException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void updateAccountPasswordPolicy(UpdateAccountPasswordPolicyRequest updateAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * * @throws MalformedPolicyDocumentException * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void updateAssumeRolePolicy(UpdateAssumeRolePolicyRequest updateAssumeRolePolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GetInstanceProfile service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetInstanceProfileResult getInstanceProfile(GetInstanceProfileRequest getInstanceProfileRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on AmazonIdentityManagement. * * @return 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 ListRolesResult listRoles(ListRolesRequest listRolesRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return 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 GetAccountSummaryResult getAccountSummary(GetAccountSummaryRequest getAccountSummaryRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the CreateSAMLProvider service method, as * returned by AmazonIdentityManagement. * * @throws InvalidInputException * @throws LimitExceededException * @throws EntityAlreadyExistsException * * @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 CreateSAMLProviderResult createSAMLProvider(CreateSAMLProviderRequest createSAMLProviderRequest) throws AmazonServiceException, AmazonClientException; /** *

* 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 service method on * AmazonIdentityManagement. * * @return The response from the GetAccountPasswordPolicy service method, * as returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetAccountPasswordPolicyResult getAccountPasswordPolicy(GetAccountPasswordPolicyRequest getAccountPasswordPolicyRequest) throws AmazonServiceException, AmazonClientException; /** *

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

*

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

* * @return 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 ListGroupsResult listGroups() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 ListServerCertificatesResult listServerCertificates() throws AmazonServiceException, AmazonClientException; /** *

* Lists the SAML providers in the account. *

*

* NOTE:This operation requires Signature Version 4. *

* * @return 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 ListSAMLProvidersResult listSAMLProviders() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 ListUsersResult listUsers() throws AmazonServiceException, AmazonClientException; /** *

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

* * @return The response from the GetCredentialReport service method, as * returned by AmazonIdentityManagement. * * @throws CredentialReportNotPresentException * @throws CredentialReportNotReadyException * @throws CredentialReportExpiredException * * @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 GetCredentialReportResult getCredentialReport() throws AmazonServiceException, AmazonClientException; /** *

* Deletes the password policy for the AWS account. *

* * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 void deleteAccountPasswordPolicy() throws AmazonServiceException, AmazonClientException; /** *

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

* * @return The response from the GenerateCredentialReport service method, * as returned by AmazonIdentityManagement. * * @throws LimitExceededException * * @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 GenerateCredentialReportResult generateCredentialReport() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return The response from the CreateAccessKey service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * @throws LimitExceededException * * @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 CreateAccessKeyResult createAccessKey() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return The response from the GetUser service method, as returned by * AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetUserResult getUser() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return The response from the ListMFADevices service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListMFADevicesResult listMFADevices() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 ListInstanceProfilesResult listInstanceProfiles() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 ListAccountAliasesResult listAccountAliases() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return The response from the ListSigningCertificates service method, * as returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListSigningCertificatesResult listSigningCertificates() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return The response from the ListAccessKeys service method, as * returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 ListAccessKeysResult listAccessKeys() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 ListVirtualMFADevicesResult listVirtualMFADevices() throws AmazonServiceException, AmazonClientException; /** *

* 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 * . *

* * @return 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 ListRolesResult listRoles() throws AmazonServiceException, AmazonClientException; /** *

* 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. *

* * @return 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 GetAccountSummaryResult getAccountSummary() throws AmazonServiceException, AmazonClientException; /** *

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

* * @return The response from the GetAccountPasswordPolicy service method, * as returned by AmazonIdentityManagement. * * @throws NoSuchEntityException * * @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 GetAccountPasswordPolicyResult getAccountPasswordPolicy() throws AmazonServiceException, AmazonClientException; /** * Shuts down this client object, releasing any resources that might be held * open. This is an optional method, and callers are not expected to call * it, but can if they want to explicitly release any open resources. Once a * client has been shutdown, it should not be used to make any more * requests. */ public void shutdown(); /** * Returns additional metadata for a previously executed successful request, typically used for * debugging issues where a service isn't acting as expected. This data isn't considered part * of the result data returned by an operation, so it's available through this separate, * diagnostic interface. *

* Response metadata is only cached for a limited period of time, so if you need to access * this extra diagnostic information for an executed request, you should use this method * to retrieve it as soon as possible after executing a request. * * @param request * The originally executed request. * * @return The response metadata for the specified request, or null if none * is available. */ public ResponseMetadata getCachedResponseMetadata(AmazonWebServiceRequest request); }





© 2015 - 2025 Weber Informatics LLC | Privacy Policy