api_op_GetAccessKeyInfo.go 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. // Code generated by smithy-go-codegen DO NOT EDIT.
  2. package sts
  3. import (
  4. "context"
  5. awsmiddleware "github.com/aws/aws-sdk-go-v2/aws/middleware"
  6. "github.com/aws/aws-sdk-go-v2/aws/signer/v4"
  7. "github.com/aws/smithy-go/middleware"
  8. smithyhttp "github.com/aws/smithy-go/transport/http"
  9. )
  10. // Returns the account identifier for the specified access key ID. Access keys
  11. // consist of two parts: an access key ID (for example, AKIAIOSFODNN7EXAMPLE) and a
  12. // secret access key (for example, wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY). For
  13. // more information about access keys, see Managing Access Keys for IAM Users
  14. // (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_access-keys.html)
  15. // in the IAM User Guide. When you pass an access key ID to this operation, it
  16. // returns the ID of the Amazon Web Services account to which the keys belong.
  17. // Access key IDs beginning with AKIA are long-term credentials for an IAM user or
  18. // the Amazon Web Services account root user. Access key IDs beginning with ASIA
  19. // are temporary credentials that are created using STS operations. If the account
  20. // in the response belongs to you, you can sign in as the root user and review your
  21. // root user access keys. Then, you can pull a credentials report
  22. // (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_credentials_getting-report.html)
  23. // to learn which IAM user owns the keys. To learn who requested the temporary
  24. // credentials for an ASIA access key, view the STS events in your CloudTrail logs
  25. // (https://docs.aws.amazon.com/IAM/latest/UserGuide/cloudtrail-integration.html)
  26. // in the IAM User Guide. This operation does not indicate the state of the access
  27. // key. The key might be active, inactive, or deleted. Active keys might not have
  28. // permissions to perform an operation. Providing a deleted access key might return
  29. // an error that the key doesn't exist.
  30. func (c *Client) GetAccessKeyInfo(ctx context.Context, params *GetAccessKeyInfoInput, optFns ...func(*Options)) (*GetAccessKeyInfoOutput, error) {
  31. if params == nil {
  32. params = &GetAccessKeyInfoInput{}
  33. }
  34. result, metadata, err := c.invokeOperation(ctx, "GetAccessKeyInfo", params, optFns, c.addOperationGetAccessKeyInfoMiddlewares)
  35. if err != nil {
  36. return nil, err
  37. }
  38. out := result.(*GetAccessKeyInfoOutput)
  39. out.ResultMetadata = metadata
  40. return out, nil
  41. }
  42. type GetAccessKeyInfoInput struct {
  43. // The identifier of an access key. This parameter allows (through its regex
  44. // pattern) a string of characters that can consist of any upper- or lowercase
  45. // letter or digit.
  46. //
  47. // This member is required.
  48. AccessKeyId *string
  49. noSmithyDocumentSerde
  50. }
  51. type GetAccessKeyInfoOutput struct {
  52. // The number used to identify the Amazon Web Services account.
  53. Account *string
  54. // Metadata pertaining to the operation's result.
  55. ResultMetadata middleware.Metadata
  56. noSmithyDocumentSerde
  57. }
  58. func (c *Client) addOperationGetAccessKeyInfoMiddlewares(stack *middleware.Stack, options Options) (err error) {
  59. err = stack.Serialize.Add(&awsAwsquery_serializeOpGetAccessKeyInfo{}, middleware.After)
  60. if err != nil {
  61. return err
  62. }
  63. err = stack.Deserialize.Add(&awsAwsquery_deserializeOpGetAccessKeyInfo{}, middleware.After)
  64. if err != nil {
  65. return err
  66. }
  67. if err = addSetLoggerMiddleware(stack, options); err != nil {
  68. return err
  69. }
  70. if err = awsmiddleware.AddClientRequestIDMiddleware(stack); err != nil {
  71. return err
  72. }
  73. if err = smithyhttp.AddComputeContentLengthMiddleware(stack); err != nil {
  74. return err
  75. }
  76. if err = addResolveEndpointMiddleware(stack, options); err != nil {
  77. return err
  78. }
  79. if err = v4.AddComputePayloadSHA256Middleware(stack); err != nil {
  80. return err
  81. }
  82. if err = addRetryMiddlewares(stack, options); err != nil {
  83. return err
  84. }
  85. if err = addHTTPSignerV4Middleware(stack, options); err != nil {
  86. return err
  87. }
  88. if err = awsmiddleware.AddRawResponseToMetadata(stack); err != nil {
  89. return err
  90. }
  91. if err = awsmiddleware.AddRecordResponseTiming(stack); err != nil {
  92. return err
  93. }
  94. if err = addClientUserAgent(stack); err != nil {
  95. return err
  96. }
  97. if err = smithyhttp.AddErrorCloseResponseBodyMiddleware(stack); err != nil {
  98. return err
  99. }
  100. if err = smithyhttp.AddCloseResponseBodyMiddleware(stack); err != nil {
  101. return err
  102. }
  103. if err = addOpGetAccessKeyInfoValidationMiddleware(stack); err != nil {
  104. return err
  105. }
  106. if err = stack.Initialize.Add(newServiceMetadataMiddleware_opGetAccessKeyInfo(options.Region), middleware.Before); err != nil {
  107. return err
  108. }
  109. if err = addRequestIDRetrieverMiddleware(stack); err != nil {
  110. return err
  111. }
  112. if err = addResponseErrorMiddleware(stack); err != nil {
  113. return err
  114. }
  115. if err = addRequestResponseLogging(stack, options); err != nil {
  116. return err
  117. }
  118. return nil
  119. }
  120. func newServiceMetadataMiddleware_opGetAccessKeyInfo(region string) *awsmiddleware.RegisterServiceMetadata {
  121. return &awsmiddleware.RegisterServiceMetadata{
  122. Region: region,
  123. ServiceID: ServiceID,
  124. SigningName: "sts",
  125. OperationName: "GetAccessKeyInfo",
  126. }
  127. }