Struct: s3crypto.DecryptionClient

import "../ibm-cos-sdk-go/service/s3/s3crypto"

Overview

DecryptionClient is an S3 crypto client. The decryption client will handle all get object requests from Amazon S3. Supported key wrapping algorithms:

*AWS KMS

Supported content ciphers: - AES/GCM - AES/CBC

Deprecated: This feature is in maintenance mode, no new updates will be released. Please see docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information.

Implemented Interfaces

s3crypto.Cipher, s3manager.ReadSeekerWriteTo, s3manager.WriterReadFrom

Structure Field Summary collapse

Method Summary collapse

Structure Field Details

CEKRegistry map[string]CEKEntry

LoadStrategy LoadStrategy

LoadStrategy is used to load the metadata either from the metadata of the object or from a separate file in s3.

Defaults to our default load strategy.

PadderRegistry map[string]Padder

S3Client s3iface.S3API

WrapRegistry map[string]WrapEntry

Method Details

func (c *DecryptionClient) GetObject(input *s3.GetObjectInput) (*s3.GetObjectOutput, error)

GetObject is a wrapper for GetObjectRequest

Deprecated: This feature is in maintenance mode, no new updates will be released. Please see docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information.



105
106
107
// File 'service/s3/s3crypto/decryption_client.go', line 105

func (c *DecryptionClient) GetObject(input *s3.GetObjectInput) (*s3.GetObjectOutput, error) { return getObject(c.getClientOptions(), input) }

func (c *DecryptionClient) GetObjectRequest(input *s3.GetObjectInput) (*request.Request, *s3.GetObjectOutput)

GetObjectRequest will make a request to s3 and retrieve the object. In this process decryption will be done. The SDK only supports V2 reads of KMS and GCM.

Example:

sess := session.Must(session.NewSession()) svc := s3crypto.NewDecryptionClient(sess) req, out := svc.GetObjectRequest(&s3.GetObjectInput { Key: aws.String("testKey"), Bucket: aws.String("testBucket"), }) err := req.Send()

Deprecated: This feature is in maintenance mode, no new updates will be released. Please see docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information.



98
99
100
// File 'service/s3/s3crypto/decryption_client.go', line 98

func (c *DecryptionClient) GetObjectRequest(input *s3.GetObjectInput) (*request.Request, *s3.GetObjectOutput) { return getObjectRequest(c.getClientOptions(), input) }

func (c *DecryptionClient) GetObjectWithContext(ctx aws.Context, input *s3.GetObjectInput, opts ...request.Option) (*s3.GetObjectOutput, error)

GetObjectWithContext is a wrapper for GetObjectRequest with the additional context, and request options support.

GetObjectWithContext is the same as GetObject with the additional support for Context input parameters. The Context must not be nil. A nil Context will cause a panic. Use the Context to add deadlining, timeouts, etc. In the future this may create sub-contexts for individual underlying requests.

Deprecated: This feature is in maintenance mode, no new updates will be released. Please see docs.aws.amazon.com/general/latest/gr/aws_sdk_cryptography.html for more information.



118
119
120
// File 'service/s3/s3crypto/decryption_client.go', line 118

func (c *DecryptionClient) GetObjectWithContext(ctx aws.Context, input *s3.GetObjectInput, opts ...request.Option) (*s3.GetObjectOutput, error) { return getObjectWithContext(c.getClientOptions(), ctx, input, opts...) }