// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT. // Package sts provides the client and types for making API // requests to AWS Security Token Service. // // The AWS Security Token Service (STS) is a web service that enables you to // request temporary, limited-privilege credentials for AWS Identity and Access // Management (IAM) users or for users that you authenticate (federated users). // This guide provides descriptions of the STS API. For more detailed information // about using this service, go to Temporary Security Credentials (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp.html). // // As an alternative to using the API, you can use one of the AWS SDKs, which // 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 STS. For example, the SDKs take care // of cryptographically signing requests, 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 (http://aws.amazon.com/tools/). // // For information about setting up signatures and authorization through the // API, go to Signing AWS API Requests (http://docs.aws.amazon.com/general/latest/gr/signing_aws_api_requests.html) // in the AWS General Reference. For general information about the Query API, // go to Making Query Requests (http://docs.aws.amazon.com/IAM/latest/UserGuide/IAM_UsingQueryAPI.html) // in Using IAM. For information about using security tokens with other AWS // products, go to AWS Services That Work with IAM (http://docs.aws.amazon.com/IAM/latest/UserGuide/reference_aws-services-that-work-with-iam.html) // in the IAM User Guide. // // If you're new to AWS and need additional technical information about a specific // AWS product, you can find the product's technical documentation at http://aws.amazon.com/documentation/ // (http://aws.amazon.com/documentation/). // // Endpoints // // The AWS Security Token Service (STS) has a default endpoint of https://sts.amazonaws.com // that maps to the US East (N. Virginia) region. Additional regions are available // and are activated by default. For more information, see Activating and Deactivating // AWS STS in an AWS Region (http://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_temp_enable-regions.html) // in the IAM User Guide. // // For information about STS endpoints, see Regions and Endpoints (http://docs.aws.amazon.com/general/latest/gr/rande.html#sts_region) // in the AWS General Reference. // // Recording API requests // // STS 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 STS, 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 (http://docs.aws.amazon.com/awscloudtrail/latest/userguide/what_is_cloud_trail_top_level.html). // // See https://docs.aws.amazon.com/goto/WebAPI/sts-2011-06-15 for more information on this service. // // See sts package documentation for more information. // https://docs.aws.amazon.com/sdk-for-go/api/service/sts/ // // Using the Client // // To use the client for AWS Security Token Service you will first need // to create a new instance of it. // // When creating a client for an AWS service you'll first need to have a Session // already created. The Session provides configuration that can be shared // between multiple service clients. Additional configuration can be applied to // the Session and service's client when they are constructed. The aws package's // Config type contains several fields such as Region for the AWS Region the // client should make API requests too. The optional Config value can be provided // as the variadic argument for Sessions and client creation. // // Once the service's client is created you can use it to make API requests the // AWS service. These clients are safe to use concurrently. // // // Create a session to share configuration, and load external configuration. // sess := session.Must(session.NewSession()) // // // Create the service's client with the session. // svc := sts.New(sess) // // See the SDK's documentation for more information on how to use service clients. // https://docs.aws.amazon.com/sdk-for-go/api/ // // See aws package's Config type for more information on configuration options. // https://docs.aws.amazon.com/sdk-for-go/api/aws/#Config // // See the AWS Security Token Service client STS for more // information on creating the service's client. // https://docs.aws.amazon.com/sdk-for-go/api/service/sts/#New // // Once the client is created you can make an API request to the service. // Each API method takes a input parameter, and returns the service response // and an error. // // The API method will document which error codes the service can be returned // by the operation if the service models the API operation's errors. These // errors will also be available as const strings prefixed with "ErrCode". // // result, err := svc.AssumeRole(params) // if err != nil { // // Cast err to awserr.Error to handle specific error codes. // aerr, ok := err.(awserr.Error) // if ok && aerr.Code() == { // // Specific error code handling // } // return err // } // // fmt.Println("AssumeRole result:") // fmt.Println(result) // // Using the Client with Context // // The service's client also provides methods to make API requests with a Context // value. This allows you to control the timeout, and cancellation of pending // requests. These methods also take request Option as variadic parameter to apply // additional configuration to the API request. // // ctx := context.Background() // // result, err := svc.AssumeRoleWithContext(ctx, params) // // See the request package documentation for more information on using Context pattern // with the SDK. // https://docs.aws.amazon.com/sdk-for-go/api/aws/request/ package sts