Merged in feature/semver (pull request #93)
Add semantic versioning to all services * working * Merge branch 'main' of bitbucket.org:aarete/query-orchestration into feature/semver * 1.24 mod * go upgrade * tool * Merge branch 'main' of bitbucket.org:aarete/query-orchestration into feature/semver
This commit is contained in:
+11
@@ -172,6 +172,17 @@ func (p *CredentialsCache) getCreds() (Credentials, bool) {
|
||||
return *c, true
|
||||
}
|
||||
|
||||
// ProviderSources returns a list of where the underlying credential provider
|
||||
// has been sourced, if available. Returns empty if the provider doesn't implement
|
||||
// the interface
|
||||
func (p *CredentialsCache) ProviderSources() []CredentialSource {
|
||||
asSource, ok := p.provider.(CredentialProviderSource)
|
||||
if !ok {
|
||||
return []CredentialSource{}
|
||||
}
|
||||
return asSource.ProviderSources()
|
||||
}
|
||||
|
||||
// Invalidate will invalidate the cached credentials. The next call to Retrieve
|
||||
// will cause the provider's Retrieve method to be called.
|
||||
func (p *CredentialsCache) Invalidate() {
|
||||
|
||||
+57
@@ -70,6 +70,56 @@ func (AnonymousCredentials) Retrieve(context.Context) (Credentials, error) {
|
||||
fmt.Errorf("the AnonymousCredentials is not a valid credential provider, and cannot be used to sign AWS requests with")
|
||||
}
|
||||
|
||||
// CredentialSource is the source of the credential provider.
|
||||
// A provider can have multiple credential sources: For example, a provider that reads a profile, calls ECS to
|
||||
// get credentials and then assumes a role using STS will have all these as part of its provider chain.
|
||||
type CredentialSource int
|
||||
|
||||
const (
|
||||
// CredentialSourceUndefined is the sentinel zero value
|
||||
CredentialSourceUndefined CredentialSource = iota
|
||||
// CredentialSourceCode credentials resolved from code, cli parameters, session object, or client instance
|
||||
CredentialSourceCode
|
||||
// CredentialSourceEnvVars credentials resolved from environment variables
|
||||
CredentialSourceEnvVars
|
||||
// CredentialSourceEnvVarsSTSWebIDToken credentials resolved from environment variables for assuming a role with STS using a web identity token
|
||||
CredentialSourceEnvVarsSTSWebIDToken
|
||||
// CredentialSourceSTSAssumeRole credentials resolved from STS using AssumeRole
|
||||
CredentialSourceSTSAssumeRole
|
||||
// CredentialSourceSTSAssumeRoleSaml credentials resolved from STS using assume role with SAML
|
||||
CredentialSourceSTSAssumeRoleSaml
|
||||
// CredentialSourceSTSAssumeRoleWebID credentials resolved from STS using assume role with web identity
|
||||
CredentialSourceSTSAssumeRoleWebID
|
||||
// CredentialSourceSTSFederationToken credentials resolved from STS using a federation token
|
||||
CredentialSourceSTSFederationToken
|
||||
// CredentialSourceSTSSessionToken credentials resolved from STS using a session token S
|
||||
CredentialSourceSTSSessionToken
|
||||
// CredentialSourceProfile credentials resolved from a config file(s) profile with static credentials
|
||||
CredentialSourceProfile
|
||||
// CredentialSourceProfileSourceProfile credentials resolved from a source profile in a config file(s) profile
|
||||
CredentialSourceProfileSourceProfile
|
||||
// CredentialSourceProfileNamedProvider credentials resolved from a named provider in a config file(s) profile (like EcsContainer)
|
||||
CredentialSourceProfileNamedProvider
|
||||
// CredentialSourceProfileSTSWebIDToken credentials resolved from configuration for assuming a role with STS using web identity token in a config file(s) profile
|
||||
CredentialSourceProfileSTSWebIDToken
|
||||
// CredentialSourceProfileSSO credentials resolved from an SSO session in a config file(s) profile
|
||||
CredentialSourceProfileSSO
|
||||
// CredentialSourceSSO credentials resolved from an SSO session
|
||||
CredentialSourceSSO
|
||||
// CredentialSourceProfileSSOLegacy credentials resolved from an SSO session in a config file(s) profile using legacy format
|
||||
CredentialSourceProfileSSOLegacy
|
||||
// CredentialSourceSSOLegacy credentials resolved from an SSO session using legacy format
|
||||
CredentialSourceSSOLegacy
|
||||
// CredentialSourceProfileProcess credentials resolved from a process in a config file(s) profile
|
||||
CredentialSourceProfileProcess
|
||||
// CredentialSourceProcess credentials resolved from a process
|
||||
CredentialSourceProcess
|
||||
// CredentialSourceHTTP credentials resolved from an HTTP endpoint
|
||||
CredentialSourceHTTP
|
||||
// CredentialSourceIMDS credentials resolved from the instance metadata service (IMDS)
|
||||
CredentialSourceIMDS
|
||||
)
|
||||
|
||||
// A Credentials is the AWS credentials value for individual credential fields.
|
||||
type Credentials struct {
|
||||
// AWS Access key ID
|
||||
@@ -125,6 +175,13 @@ type CredentialsProvider interface {
|
||||
Retrieve(ctx context.Context) (Credentials, error)
|
||||
}
|
||||
|
||||
// CredentialProviderSource allows any credential provider to track
|
||||
// all providers where a credential provider were sourced. For example, if the credentials came from a
|
||||
// call to a role specified in the profile, this method will give the whole breadcrumb trail
|
||||
type CredentialProviderSource interface {
|
||||
ProviderSources() []CredentialSource
|
||||
}
|
||||
|
||||
// CredentialsProviderFunc provides a helper wrapping a function value to
|
||||
// satisfy the CredentialsProvider interface.
|
||||
type CredentialsProviderFunc func(context.Context) (Credentials, error)
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package aws
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.36.1"
|
||||
const goModuleVersion = "1.36.3"
|
||||
|
||||
+57
@@ -109,8 +109,57 @@ const (
|
||||
UserAgentFeatureRequestChecksumWhenRequired = "a"
|
||||
UserAgentFeatureResponseChecksumWhenSupported = "b"
|
||||
UserAgentFeatureResponseChecksumWhenRequired = "c"
|
||||
|
||||
UserAgentFeatureDynamoDBUserAgent = "d" // not yet implemented
|
||||
|
||||
UserAgentFeatureCredentialsCode = "e"
|
||||
UserAgentFeatureCredentialsJvmSystemProperties = "f" // n/a (this is not a JVM sdk)
|
||||
UserAgentFeatureCredentialsEnvVars = "g"
|
||||
UserAgentFeatureCredentialsEnvVarsStsWebIDToken = "h"
|
||||
UserAgentFeatureCredentialsStsAssumeRole = "i"
|
||||
UserAgentFeatureCredentialsStsAssumeRoleSaml = "j" // not yet implemented
|
||||
UserAgentFeatureCredentialsStsAssumeRoleWebID = "k"
|
||||
UserAgentFeatureCredentialsStsFederationToken = "l" // not yet implemented
|
||||
UserAgentFeatureCredentialsStsSessionToken = "m" // not yet implemented
|
||||
UserAgentFeatureCredentialsProfile = "n"
|
||||
UserAgentFeatureCredentialsProfileSourceProfile = "o"
|
||||
UserAgentFeatureCredentialsProfileNamedProvider = "p"
|
||||
UserAgentFeatureCredentialsProfileStsWebIDToken = "q"
|
||||
UserAgentFeatureCredentialsProfileSso = "r"
|
||||
UserAgentFeatureCredentialsSso = "s"
|
||||
UserAgentFeatureCredentialsProfileSsoLegacy = "t"
|
||||
UserAgentFeatureCredentialsSsoLegacy = "u"
|
||||
UserAgentFeatureCredentialsProfileProcess = "v"
|
||||
UserAgentFeatureCredentialsProcess = "w"
|
||||
UserAgentFeatureCredentialsBoto2ConfigFile = "x" // n/a (this is not boto/Python)
|
||||
UserAgentFeatureCredentialsAwsSdkStore = "y" // n/a (this is used by .NET based sdk)
|
||||
UserAgentFeatureCredentialsHTTP = "z"
|
||||
UserAgentFeatureCredentialsIMDS = "0"
|
||||
)
|
||||
|
||||
var credentialSourceToFeature = map[aws.CredentialSource]UserAgentFeature{
|
||||
aws.CredentialSourceCode: UserAgentFeatureCredentialsCode,
|
||||
aws.CredentialSourceEnvVars: UserAgentFeatureCredentialsEnvVars,
|
||||
aws.CredentialSourceEnvVarsSTSWebIDToken: UserAgentFeatureCredentialsEnvVarsStsWebIDToken,
|
||||
aws.CredentialSourceSTSAssumeRole: UserAgentFeatureCredentialsStsAssumeRole,
|
||||
aws.CredentialSourceSTSAssumeRoleSaml: UserAgentFeatureCredentialsStsAssumeRoleSaml,
|
||||
aws.CredentialSourceSTSAssumeRoleWebID: UserAgentFeatureCredentialsStsAssumeRoleWebID,
|
||||
aws.CredentialSourceSTSFederationToken: UserAgentFeatureCredentialsStsFederationToken,
|
||||
aws.CredentialSourceSTSSessionToken: UserAgentFeatureCredentialsStsSessionToken,
|
||||
aws.CredentialSourceProfile: UserAgentFeatureCredentialsProfile,
|
||||
aws.CredentialSourceProfileSourceProfile: UserAgentFeatureCredentialsProfileSourceProfile,
|
||||
aws.CredentialSourceProfileNamedProvider: UserAgentFeatureCredentialsProfileNamedProvider,
|
||||
aws.CredentialSourceProfileSTSWebIDToken: UserAgentFeatureCredentialsProfileStsWebIDToken,
|
||||
aws.CredentialSourceProfileSSO: UserAgentFeatureCredentialsProfileSso,
|
||||
aws.CredentialSourceSSO: UserAgentFeatureCredentialsSso,
|
||||
aws.CredentialSourceProfileSSOLegacy: UserAgentFeatureCredentialsProfileSsoLegacy,
|
||||
aws.CredentialSourceSSOLegacy: UserAgentFeatureCredentialsSsoLegacy,
|
||||
aws.CredentialSourceProfileProcess: UserAgentFeatureCredentialsProfileProcess,
|
||||
aws.CredentialSourceProcess: UserAgentFeatureCredentialsProcess,
|
||||
aws.CredentialSourceHTTP: UserAgentFeatureCredentialsHTTP,
|
||||
aws.CredentialSourceIMDS: UserAgentFeatureCredentialsIMDS,
|
||||
}
|
||||
|
||||
// RequestUserAgent is a build middleware that set the User-Agent for the request.
|
||||
type RequestUserAgent struct {
|
||||
sdkAgent, userAgent *smithyhttp.UserAgentBuilder
|
||||
@@ -263,6 +312,14 @@ func (u *RequestUserAgent) AddSDKAgentKeyValue(keyType SDKAgentKeyType, key, val
|
||||
u.userAgent.AddKeyValue(keyType.string(), strings.Map(rules, key)+"#"+strings.Map(rules, value))
|
||||
}
|
||||
|
||||
// AddCredentialsSource adds the credential source as a feature on the User-Agent string
|
||||
func (u *RequestUserAgent) AddCredentialsSource(source aws.CredentialSource) {
|
||||
x, ok := credentialSourceToFeature[source]
|
||||
if ok {
|
||||
u.AddUserAgentFeature(x)
|
||||
}
|
||||
}
|
||||
|
||||
// ID the name of the middleware.
|
||||
func (u *RequestUserAgent) ID() string {
|
||||
return "UserAgent"
|
||||
|
||||
+8
@@ -1,3 +1,11 @@
|
||||
# v1.6.10 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
|
||||
# v1.6.9 (2025-02-14)
|
||||
|
||||
* **Bug Fix**: Remove max limit on event stream messages
|
||||
|
||||
# v1.6.8 (2025-01-24)
|
||||
|
||||
* **Dependency Update**: Upgrade to smithy-go v1.22.2.
|
||||
|
||||
Generated
Vendored
+1
-1
@@ -3,4 +3,4 @@
|
||||
package eventstream
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.6.8"
|
||||
const goModuleVersion = "1.6.10"
|
||||
|
||||
+2
-20
@@ -10,9 +10,6 @@ const preludeLen = 8
|
||||
const preludeCRCLen = 4
|
||||
const msgCRCLen = 4
|
||||
const minMsgLen = preludeLen + preludeCRCLen + msgCRCLen
|
||||
const maxPayloadLen = 1024 * 1024 * 16 // 16MB
|
||||
const maxHeadersLen = 1024 * 128 // 128KB
|
||||
const maxMsgLen = minMsgLen + maxHeadersLen + maxPayloadLen
|
||||
|
||||
var crc32IEEETable = crc32.MakeTable(crc32.IEEE)
|
||||
|
||||
@@ -82,28 +79,13 @@ func (p messagePrelude) PayloadLen() uint32 {
|
||||
}
|
||||
|
||||
func (p messagePrelude) ValidateLens() error {
|
||||
if p.Length == 0 || p.Length > maxMsgLen {
|
||||
if p.Length == 0 {
|
||||
return LengthError{
|
||||
Part: "message prelude",
|
||||
Want: maxMsgLen,
|
||||
Want: minMsgLen,
|
||||
Have: int(p.Length),
|
||||
}
|
||||
}
|
||||
if p.HeadersLen > maxHeadersLen {
|
||||
return LengthError{
|
||||
Part: "message headers",
|
||||
Want: maxHeadersLen,
|
||||
Have: int(p.HeadersLen),
|
||||
}
|
||||
}
|
||||
if payloadLen := p.PayloadLen(); payloadLen > maxPayloadLen {
|
||||
return LengthError{
|
||||
Part: "message payload",
|
||||
Want: maxPayloadLen,
|
||||
Have: int(payloadLen),
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
+21
@@ -1,3 +1,24 @@
|
||||
# v1.29.9 (2025-03-04.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.29.8 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.29.7 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.29.6 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.29.5 (2025-02-04)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.29.4 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package config
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.29.4"
|
||||
const goModuleVersion = "1.29.9"
|
||||
|
||||
+80
-22
@@ -112,13 +112,15 @@ func resolveCredentialChain(ctx context.Context, cfg *aws.Config, configs config
|
||||
|
||||
switch {
|
||||
case sharedProfileSet:
|
||||
err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig, other)
|
||||
ctx, err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig, other)
|
||||
case envConfig.Credentials.HasKeys():
|
||||
cfg.Credentials = credentials.StaticCredentialsProvider{Value: envConfig.Credentials}
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceEnvVars)
|
||||
cfg.Credentials = credentials.StaticCredentialsProvider{Value: envConfig.Credentials, Source: getCredentialSources(ctx)}
|
||||
case len(envConfig.WebIdentityTokenFilePath) > 0:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceEnvVarsSTSWebIDToken)
|
||||
err = assumeWebIdentity(ctx, cfg, envConfig.WebIdentityTokenFilePath, envConfig.RoleARN, envConfig.RoleSessionName, configs)
|
||||
default:
|
||||
err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig, other)
|
||||
ctx, err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig, other)
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -133,53 +135,71 @@ func resolveCredentialChain(ctx context.Context, cfg *aws.Config, configs config
|
||||
return nil
|
||||
}
|
||||
|
||||
func resolveCredsFromProfile(ctx context.Context, cfg *aws.Config, envConfig *EnvConfig, sharedConfig *SharedConfig, configs configs) (err error) {
|
||||
|
||||
func resolveCredsFromProfile(ctx context.Context, cfg *aws.Config, envConfig *EnvConfig, sharedConfig *SharedConfig, configs configs) (ctx2 context.Context, err error) {
|
||||
switch {
|
||||
case sharedConfig.Source != nil:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileSourceProfile)
|
||||
// Assume IAM role with credentials source from a different profile.
|
||||
err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig.Source, configs)
|
||||
ctx, err = resolveCredsFromProfile(ctx, cfg, envConfig, sharedConfig.Source, configs)
|
||||
|
||||
case sharedConfig.Credentials.HasKeys():
|
||||
// Static Credentials from Shared Config/Credentials file.
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfile)
|
||||
cfg.Credentials = credentials.StaticCredentialsProvider{
|
||||
Value: sharedConfig.Credentials,
|
||||
Value: sharedConfig.Credentials,
|
||||
Source: getCredentialSources(ctx),
|
||||
}
|
||||
|
||||
case len(sharedConfig.CredentialSource) != 0:
|
||||
err = resolveCredsFromSource(ctx, cfg, envConfig, sharedConfig, configs)
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileNamedProvider)
|
||||
ctx, err = resolveCredsFromSource(ctx, cfg, envConfig, sharedConfig, configs)
|
||||
|
||||
case len(sharedConfig.WebIdentityTokenFile) != 0:
|
||||
// Credentials from Assume Web Identity token require an IAM Role, and
|
||||
// that roll will be assumed. May be wrapped with another assume role
|
||||
// via SourceProfile.
|
||||
return assumeWebIdentity(ctx, cfg, sharedConfig.WebIdentityTokenFile, sharedConfig.RoleARN, sharedConfig.RoleSessionName, configs)
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileSTSWebIDToken)
|
||||
return ctx, assumeWebIdentity(ctx, cfg, sharedConfig.WebIdentityTokenFile, sharedConfig.RoleARN, sharedConfig.RoleSessionName, configs)
|
||||
|
||||
case sharedConfig.hasSSOConfiguration():
|
||||
if sharedConfig.hasLegacySSOConfiguration() {
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileSSOLegacy)
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceSSOLegacy)
|
||||
} else {
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceSSO)
|
||||
}
|
||||
if sharedConfig.SSOSession != nil {
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileSSO)
|
||||
}
|
||||
err = resolveSSOCredentials(ctx, cfg, sharedConfig, configs)
|
||||
|
||||
case len(sharedConfig.CredentialProcess) != 0:
|
||||
// Get credentials from CredentialProcess
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProfileProcess)
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceProcess)
|
||||
err = processCredentials(ctx, cfg, sharedConfig, configs)
|
||||
|
||||
case len(envConfig.ContainerCredentialsRelativePath) != 0:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceHTTP)
|
||||
err = resolveHTTPCredProvider(ctx, cfg, ecsContainerURI(envConfig.ContainerCredentialsRelativePath), envConfig.ContainerAuthorizationToken, configs)
|
||||
|
||||
case len(envConfig.ContainerCredentialsEndpoint) != 0:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceHTTP)
|
||||
err = resolveLocalHTTPCredProvider(ctx, cfg, envConfig.ContainerCredentialsEndpoint, envConfig.ContainerAuthorizationToken, configs)
|
||||
|
||||
default:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceIMDS)
|
||||
err = resolveEC2RoleCredentials(ctx, cfg, configs)
|
||||
}
|
||||
if err != nil {
|
||||
return err
|
||||
return ctx, err
|
||||
}
|
||||
|
||||
if len(sharedConfig.RoleARN) > 0 {
|
||||
return credsFromAssumeRole(ctx, cfg, sharedConfig, configs)
|
||||
return ctx, credsFromAssumeRole(ctx, cfg, sharedConfig, configs)
|
||||
}
|
||||
|
||||
return nil
|
||||
return ctx, nil
|
||||
}
|
||||
|
||||
func resolveSSOCredentials(ctx context.Context, cfg *aws.Config, sharedConfig *SharedConfig, configs configs) error {
|
||||
@@ -198,6 +218,10 @@ func resolveSSOCredentials(ctx context.Context, cfg *aws.Config, sharedConfig *S
|
||||
|
||||
cfgCopy := cfg.Copy()
|
||||
|
||||
options = append(options, func(o *ssocreds.Options) {
|
||||
o.CredentialSources = getCredentialSources(ctx)
|
||||
})
|
||||
|
||||
if sharedConfig.SSOSession != nil {
|
||||
ssoTokenProviderOptionsFn, found, err := getSSOTokenProviderOptions(ctx, configs)
|
||||
if err != nil {
|
||||
@@ -242,6 +266,10 @@ func processCredentials(ctx context.Context, cfg *aws.Config, sharedConfig *Shar
|
||||
opts = append(opts, options)
|
||||
}
|
||||
|
||||
opts = append(opts, func(o *processcreds.Options) {
|
||||
o.CredentialSources = getCredentialSources(ctx)
|
||||
})
|
||||
|
||||
cfg.Credentials = processcreds.NewProvider(sharedConfig.CredentialProcess, opts...)
|
||||
|
||||
return nil
|
||||
@@ -323,6 +351,7 @@ func resolveHTTPCredProvider(ctx context.Context, cfg *aws.Config, url, authToke
|
||||
if cfg.Retryer != nil {
|
||||
options.Retryer = cfg.Retryer()
|
||||
}
|
||||
options.CredentialSources = getCredentialSources(ctx)
|
||||
},
|
||||
}
|
||||
|
||||
@@ -346,28 +375,31 @@ func resolveHTTPCredProvider(ctx context.Context, cfg *aws.Config, url, authToke
|
||||
return nil
|
||||
}
|
||||
|
||||
func resolveCredsFromSource(ctx context.Context, cfg *aws.Config, envConfig *EnvConfig, sharedCfg *SharedConfig, configs configs) (err error) {
|
||||
func resolveCredsFromSource(ctx context.Context, cfg *aws.Config, envConfig *EnvConfig, sharedCfg *SharedConfig, configs configs) (context.Context, error) {
|
||||
switch sharedCfg.CredentialSource {
|
||||
case credSourceEc2Metadata:
|
||||
return resolveEC2RoleCredentials(ctx, cfg, configs)
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceIMDS)
|
||||
return ctx, resolveEC2RoleCredentials(ctx, cfg, configs)
|
||||
|
||||
case credSourceEnvironment:
|
||||
cfg.Credentials = credentials.StaticCredentialsProvider{Value: envConfig.Credentials}
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceHTTP)
|
||||
cfg.Credentials = credentials.StaticCredentialsProvider{Value: envConfig.Credentials, Source: getCredentialSources(ctx)}
|
||||
|
||||
case credSourceECSContainer:
|
||||
ctx = addCredentialSource(ctx, aws.CredentialSourceHTTP)
|
||||
if len(envConfig.ContainerCredentialsRelativePath) != 0 {
|
||||
return resolveHTTPCredProvider(ctx, cfg, ecsContainerURI(envConfig.ContainerCredentialsRelativePath), envConfig.ContainerAuthorizationToken, configs)
|
||||
return ctx, resolveHTTPCredProvider(ctx, cfg, ecsContainerURI(envConfig.ContainerCredentialsRelativePath), envConfig.ContainerAuthorizationToken, configs)
|
||||
}
|
||||
if len(envConfig.ContainerCredentialsEndpoint) != 0 {
|
||||
return resolveLocalHTTPCredProvider(ctx, cfg, envConfig.ContainerCredentialsEndpoint, envConfig.ContainerAuthorizationToken, configs)
|
||||
return ctx, resolveLocalHTTPCredProvider(ctx, cfg, envConfig.ContainerCredentialsEndpoint, envConfig.ContainerAuthorizationToken, configs)
|
||||
}
|
||||
return fmt.Errorf("EcsContainer was specified as the credential_source, but neither 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' or AWS_CONTAINER_CREDENTIALS_FULL_URI' was set")
|
||||
return ctx, fmt.Errorf("EcsContainer was specified as the credential_source, but neither 'AWS_CONTAINER_CREDENTIALS_RELATIVE_URI' or AWS_CONTAINER_CREDENTIALS_FULL_URI' was set")
|
||||
|
||||
default:
|
||||
return fmt.Errorf("credential_source values must be EcsContainer, Ec2InstanceMetadata, or Environment")
|
||||
return ctx, fmt.Errorf("credential_source values must be EcsContainer, Ec2InstanceMetadata, or Environment")
|
||||
}
|
||||
|
||||
return nil
|
||||
return ctx, nil
|
||||
}
|
||||
|
||||
func resolveEC2RoleCredentials(ctx context.Context, cfg *aws.Config, configs configs) error {
|
||||
@@ -386,6 +418,7 @@ func resolveEC2RoleCredentials(ctx context.Context, cfg *aws.Config, configs con
|
||||
if o.Client == nil {
|
||||
o.Client = imds.NewFromConfig(*cfg)
|
||||
}
|
||||
o.CredentialSources = getCredentialSources(ctx)
|
||||
})
|
||||
|
||||
provider := ec2rolecreds.New(optFns...)
|
||||
@@ -394,7 +427,6 @@ func resolveEC2RoleCredentials(ctx context.Context, cfg *aws.Config, configs con
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -473,6 +505,10 @@ func assumeWebIdentity(ctx context.Context, cfg *aws.Config, filepath string, ro
|
||||
RoleARN: roleARN,
|
||||
}
|
||||
|
||||
optFns = append(optFns, func(options *stscreds.WebIdentityRoleOptions) {
|
||||
options.CredentialSources = getCredentialSources(ctx)
|
||||
})
|
||||
|
||||
for _, fn := range optFns {
|
||||
fn(&opts)
|
||||
}
|
||||
@@ -494,6 +530,8 @@ func assumeWebIdentity(ctx context.Context, cfg *aws.Config, filepath string, ro
|
||||
}
|
||||
|
||||
func credsFromAssumeRole(ctx context.Context, cfg *aws.Config, sharedCfg *SharedConfig, configs configs) (err error) {
|
||||
// resolve credentials early
|
||||
credentialSources := getCredentialSources(ctx)
|
||||
optFns := []func(*stscreds.AssumeRoleOptions){
|
||||
func(options *stscreds.AssumeRoleOptions) {
|
||||
options.RoleSessionName = sharedCfg.RoleSessionName
|
||||
@@ -511,6 +549,9 @@ func credsFromAssumeRole(ctx context.Context, cfg *aws.Config, sharedCfg *Shared
|
||||
if len(sharedCfg.MFASerial) != 0 {
|
||||
options.SerialNumber = aws.String(sharedCfg.MFASerial)
|
||||
}
|
||||
|
||||
// add existing credential chain
|
||||
options.CredentialSources = credentialSources
|
||||
},
|
||||
}
|
||||
|
||||
@@ -533,7 +574,6 @@ func credsFromAssumeRole(ctx context.Context, cfg *aws.Config, sharedCfg *Shared
|
||||
return AssumeRoleTokenProviderNotSetError{}
|
||||
}
|
||||
}
|
||||
|
||||
cfg.Credentials = stscreds.NewAssumeRoleProvider(sts.NewFromConfig(*cfg), sharedCfg.RoleARN, optFns...)
|
||||
|
||||
return nil
|
||||
@@ -567,3 +607,21 @@ func wrapWithCredentialsCache(
|
||||
|
||||
return aws.NewCredentialsCache(provider, optFns...), nil
|
||||
}
|
||||
|
||||
// credentialSource stores the chain of providers that was used to create an instance of
|
||||
// a credentials provider on the context
|
||||
type credentialSource struct{}
|
||||
|
||||
func addCredentialSource(ctx context.Context, source aws.CredentialSource) context.Context {
|
||||
existing, ok := ctx.Value(credentialSource{}).([]aws.CredentialSource)
|
||||
if !ok {
|
||||
existing = []aws.CredentialSource{source}
|
||||
} else {
|
||||
existing = append(existing, source)
|
||||
}
|
||||
return context.WithValue(ctx, credentialSource{}, existing)
|
||||
}
|
||||
|
||||
func getCredentialSources(ctx context.Context) []aws.CredentialSource {
|
||||
return ctx.Value(credentialSource{}).([]aws.CredentialSource)
|
||||
}
|
||||
|
||||
+21
@@ -1,3 +1,24 @@
|
||||
# v1.17.62 (2025-03-04.2)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.61 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.60 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.59 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.58 (2025-02-04)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.17.57 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+12
@@ -47,6 +47,10 @@ type Options struct {
|
||||
//
|
||||
// If nil, the provider will default to the EC2 IMDS client.
|
||||
Client GetMetadataAPIClient
|
||||
|
||||
// The chain of providers that was used to create this provider
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// New returns an initialized Provider value configured to retrieve
|
||||
@@ -227,3 +231,11 @@ func requestCred(ctx context.Context, client GetMetadataAPIClient, credsName str
|
||||
|
||||
return respCreds, nil
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *Provider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceIMDS}
|
||||
} // If no source has been set, assume this is used directly which means just call to assume role
|
||||
return p.options.CredentialSources
|
||||
}
|
||||
|
||||
+14
@@ -98,6 +98,10 @@ type Options struct {
|
||||
//
|
||||
// Will override AuthorizationToken if configured
|
||||
AuthorizationTokenProvider AuthTokenProvider
|
||||
|
||||
// The chain of providers that was used to create this provider
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// AuthTokenProvider defines an interface to dynamically load a value to be passed
|
||||
@@ -191,3 +195,13 @@ func (p *Provider) resolveAuthToken() (string, error) {
|
||||
|
||||
return authToken, nil
|
||||
}
|
||||
|
||||
var _ aws.CredentialProviderSource = (*Provider)(nil)
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *Provider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceHTTP}
|
||||
}
|
||||
return p.options.CredentialSources
|
||||
}
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package credentials
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.17.57"
|
||||
const goModuleVersion = "1.17.62"
|
||||
|
||||
+11
@@ -57,6 +57,9 @@ type Provider struct {
|
||||
type Options struct {
|
||||
// Timeout limits the time a process can run.
|
||||
Timeout time.Duration
|
||||
// The chain of providers that was used to create this provider
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// NewCommandBuilder provides the interface for specifying how command will be
|
||||
@@ -274,6 +277,14 @@ func (p *Provider) executeCredentialProcess(ctx context.Context) ([]byte, error)
|
||||
return out, nil
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *Provider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceProcess}
|
||||
}
|
||||
return p.options.CredentialSources
|
||||
}
|
||||
|
||||
func executeCommand(cmd *exec.Cmd, exec chan error) {
|
||||
// Start the command
|
||||
err := cmd.Start()
|
||||
|
||||
Generated
Vendored
+12
@@ -49,6 +49,10 @@ type Options struct {
|
||||
// Used by the SSOCredentialProvider if a token configuration
|
||||
// profile is used in the shared config
|
||||
SSOTokenProvider *SSOTokenProvider
|
||||
|
||||
// The chain of providers that was used to create this provider.
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// Provider is an AWS credential provider that retrieves temporary AWS
|
||||
@@ -133,6 +137,14 @@ func (p *Provider) Retrieve(ctx context.Context) (aws.Credentials, error) {
|
||||
}, nil
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *Provider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceSSO}
|
||||
}
|
||||
return p.options.CredentialSources
|
||||
}
|
||||
|
||||
// InvalidTokenError is the error type that is returned if loaded token has
|
||||
// expired or is otherwise invalid. To refresh the SSO session run AWS SSO
|
||||
// login with the corresponding profile.
|
||||
|
||||
+10
@@ -22,6 +22,16 @@ func (*StaticCredentialsEmptyError) Error() string {
|
||||
// never expire.
|
||||
type StaticCredentialsProvider struct {
|
||||
Value aws.Credentials
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
Source []aws.CredentialSource
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (s StaticCredentialsProvider) ProviderSources() []aws.CredentialSource {
|
||||
if s.Source == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceCode} // If no source has been set, assume this is used directly which means hardcoded creds
|
||||
}
|
||||
return s.Source
|
||||
}
|
||||
|
||||
// NewStaticCredentialsProvider return a StaticCredentialsProvider initialized with the AWS
|
||||
|
||||
+12
@@ -247,6 +247,10 @@ type AssumeRoleOptions struct {
|
||||
// (https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_role-chaining)
|
||||
// in the IAM User Guide. This parameter is optional.
|
||||
TransitiveTagKeys []string
|
||||
|
||||
// The chain of providers that was used to create this provider
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// NewAssumeRoleProvider constructs and returns a credentials provider that
|
||||
@@ -324,3 +328,11 @@ func (p *AssumeRoleProvider) Retrieve(ctx context.Context) (aws.Credentials, err
|
||||
AccountID: accountID,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *AssumeRoleProvider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceSTSAssumeRole}
|
||||
} // If no source has been set, assume this is used directly which means just call to assume role
|
||||
return append(p.options.CredentialSources, aws.CredentialSourceSTSAssumeRole)
|
||||
}
|
||||
|
||||
Generated
Vendored
+12
@@ -64,6 +64,10 @@ type WebIdentityRoleOptions struct {
|
||||
// want to use as managed session policies. The policies must exist in the
|
||||
// same account as the role.
|
||||
PolicyARNs []types.PolicyDescriptorType
|
||||
|
||||
// The chain of providers that was used to create this provider
|
||||
// These values are for reporting purposes and are not meant to be set up directly
|
||||
CredentialSources []aws.CredentialSource
|
||||
}
|
||||
|
||||
// IdentityTokenRetriever is an interface for retrieving a JWT
|
||||
@@ -167,3 +171,11 @@ func getAccountID(u *types.AssumedRoleUser) string {
|
||||
}
|
||||
return parts[4]
|
||||
}
|
||||
|
||||
// ProviderSources returns the credential chain that was used to construct this provider
|
||||
func (p *WebIdentityRoleProvider) ProviderSources() []aws.CredentialSource {
|
||||
if p.options.CredentialSources == nil {
|
||||
return []aws.CredentialSource{aws.CredentialSourceSTSAssumeRoleWebID}
|
||||
}
|
||||
return p.options.CredentialSources
|
||||
}
|
||||
|
||||
+13
@@ -1,3 +1,16 @@
|
||||
# v1.16.30 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.16.29 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.16.28 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.16.27 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package imds
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.16.27"
|
||||
const goModuleVersion = "1.16.30"
|
||||
|
||||
+9
@@ -1,3 +1,12 @@
|
||||
# v1.3.34 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.33 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.32 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package configsources
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.3.32"
|
||||
const goModuleVersion = "1.3.34"
|
||||
|
||||
Generated
Vendored
+11
-1
@@ -223,7 +223,17 @@
|
||||
"supportsFIPS" : true
|
||||
},
|
||||
"regionRegex" : "^us\\-isof\\-\\w+\\-\\d+$",
|
||||
"regions" : { }
|
||||
"regions" : {
|
||||
"aws-iso-f-global" : {
|
||||
"description" : "AWS ISOF global region"
|
||||
},
|
||||
"us-isof-east-1" : {
|
||||
"description" : "US ISOF EAST"
|
||||
},
|
||||
"us-isof-south-1" : {
|
||||
"description" : "US ISOF SOUTH"
|
||||
}
|
||||
}
|
||||
} ],
|
||||
"version" : "1.1"
|
||||
}
|
||||
+9
@@ -1,3 +1,12 @@
|
||||
# v2.6.34 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v2.6.33 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v2.6.32 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package endpoints
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "2.6.32"
|
||||
const goModuleVersion = "2.6.34"
|
||||
|
||||
+4
@@ -1,3 +1,7 @@
|
||||
# v1.8.3 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
|
||||
# v1.8.2 (2025-01-24)
|
||||
|
||||
* **Bug Fix**: Refactor filepath.Walk to filepath.WalkDir
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package ini
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.8.2"
|
||||
const goModuleVersion = "1.8.3"
|
||||
|
||||
+13
@@ -1,3 +1,16 @@
|
||||
# v1.3.34 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.33 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.32 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.3.31 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+1
-1
@@ -3,4 +3,4 @@
|
||||
package v4a
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.3.31"
|
||||
const goModuleVersion = "1.3.34"
|
||||
|
||||
Generated
Vendored
+4
@@ -1,3 +1,7 @@
|
||||
# v1.12.3 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
|
||||
# v1.12.2 (2025-01-24)
|
||||
|
||||
* **Dependency Update**: Upgrade to smithy-go v1.22.2.
|
||||
|
||||
Generated
Vendored
+1
-1
@@ -3,4 +3,4 @@
|
||||
package acceptencoding
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.12.2"
|
||||
const goModuleVersion = "1.12.3"
|
||||
|
||||
+17
@@ -1,3 +1,20 @@
|
||||
# v1.6.2 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.6.1 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.6.0 (2025-02-10)
|
||||
|
||||
* **Feature**: Support CRC64NVME flex checksums.
|
||||
|
||||
# v1.5.6 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.5.5 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+9
@@ -9,6 +9,7 @@ import (
|
||||
"fmt"
|
||||
"hash"
|
||||
"hash/crc32"
|
||||
"hash/crc64"
|
||||
"io"
|
||||
"strings"
|
||||
"sync"
|
||||
@@ -35,11 +36,15 @@ const (
|
||||
AlgorithmCRC64NVME Algorithm = "CRC64NVME"
|
||||
)
|
||||
|
||||
// inverted NVME polynomial as required by crc64.MakeTable
|
||||
const crc64NVME = 0x9a6c_9329_ac4b_c9b5
|
||||
|
||||
var supportedAlgorithms = []Algorithm{
|
||||
AlgorithmCRC32C,
|
||||
AlgorithmCRC32,
|
||||
AlgorithmSHA1,
|
||||
AlgorithmSHA256,
|
||||
AlgorithmCRC64NVME,
|
||||
}
|
||||
|
||||
func (a Algorithm) String() string { return string(a) }
|
||||
@@ -92,6 +97,8 @@ func NewAlgorithmHash(v Algorithm) (hash.Hash, error) {
|
||||
return crc32.NewIEEE(), nil
|
||||
case AlgorithmCRC32C:
|
||||
return crc32.New(crc32.MakeTable(crc32.Castagnoli)), nil
|
||||
case AlgorithmCRC64NVME:
|
||||
return crc64.New(crc64.MakeTable(crc64NVME)), nil
|
||||
default:
|
||||
return nil, fmt.Errorf("unknown checksum algorithm, %v", v)
|
||||
}
|
||||
@@ -109,6 +116,8 @@ func AlgorithmChecksumLength(v Algorithm) (int, error) {
|
||||
return crc32.Size, nil
|
||||
case AlgorithmCRC32C:
|
||||
return crc32.Size, nil
|
||||
case AlgorithmCRC64NVME:
|
||||
return crc64.Size, nil
|
||||
default:
|
||||
return 0, fmt.Errorf("unknown checksum algorithm, %v", v)
|
||||
}
|
||||
|
||||
Generated
Vendored
+1
-1
@@ -3,4 +3,4 @@
|
||||
package checksum
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.5.5"
|
||||
const goModuleVersion = "1.6.2"
|
||||
|
||||
+13
@@ -1,3 +1,16 @@
|
||||
# v1.12.15 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.12.14 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.12.13 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.12.12 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
Generated
Vendored
+1
-1
@@ -3,4 +3,4 @@
|
||||
package presignedurl
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.12.12"
|
||||
const goModuleVersion = "1.12.15"
|
||||
|
||||
+13
@@ -1,3 +1,16 @@
|
||||
# v1.18.15 (2025-02-27)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.18.14 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.18.13 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.18.12 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
Generated
Vendored
+1
-1
@@ -3,4 +3,4 @@
|
||||
package s3shared
|
||||
|
||||
// goModuleVersion is the tagged release for this module
|
||||
const goModuleVersion = "1.18.12"
|
||||
const goModuleVersion = "1.18.15"
|
||||
|
||||
+35
@@ -1,3 +1,38 @@
|
||||
# v1.78.1 (2025-03-04.2)
|
||||
|
||||
* **Bug Fix**: Add assurance test for operation order.
|
||||
|
||||
# v1.78.0 (2025-02-27)
|
||||
|
||||
* **Feature**: Track credential providers via User-Agent Feature ids
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.77.1 (2025-02-18)
|
||||
|
||||
* **Bug Fix**: Bump go version to 1.22
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.77.0 (2025-02-14)
|
||||
|
||||
* **Feature**: Added support for Content-Range header in HeadObject response.
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.76.1 (2025-02-10)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.76.0 (2025-02-06)
|
||||
|
||||
* **Feature**: Updated list of the valid AWS Region values for the LocationConstraint parameter for general purpose buckets.
|
||||
|
||||
# v1.75.4 (2025-02-05)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
# v1.75.3 (2025-02-04)
|
||||
|
||||
* No change notes available for this release.
|
||||
|
||||
# v1.75.2 (2025-01-31)
|
||||
|
||||
* **Dependency Update**: Updated to the latest SDK module versions
|
||||
|
||||
+31
@@ -871,6 +871,37 @@ func addResponseChecksumMetricsTracking(stack *middleware.Stack, options Options
|
||||
}, "UserAgent", middleware.Before)
|
||||
}
|
||||
|
||||
type setCredentialSourceMiddleware struct {
|
||||
ua *awsmiddleware.RequestUserAgent
|
||||
options Options
|
||||
}
|
||||
|
||||
func (m setCredentialSourceMiddleware) ID() string { return "SetCredentialSourceMiddleware" }
|
||||
|
||||
func (m setCredentialSourceMiddleware) HandleBuild(ctx context.Context, in middleware.BuildInput, next middleware.BuildHandler) (
|
||||
out middleware.BuildOutput, metadata middleware.Metadata, err error,
|
||||
) {
|
||||
asProviderSource, ok := m.options.Credentials.(aws.CredentialProviderSource)
|
||||
if !ok {
|
||||
return next.HandleBuild(ctx, in)
|
||||
}
|
||||
providerSources := asProviderSource.ProviderSources()
|
||||
for _, source := range providerSources {
|
||||
m.ua.AddCredentialsSource(source)
|
||||
}
|
||||
return next.HandleBuild(ctx, in)
|
||||
}
|
||||
|
||||
func addCredentialSource(stack *middleware.Stack, options Options) error {
|
||||
ua, err := getOrAddRequestUserAgent(stack)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
mw := setCredentialSourceMiddleware{ua: ua, options: options}
|
||||
return stack.Build.Insert(&mw, "UserAgent", middleware.Before)
|
||||
}
|
||||
|
||||
func resolveTracerProvider(options *Options) {
|
||||
if options.TracerProvider == nil {
|
||||
options.TracerProvider = &tracing.NopTracerProvider{}
|
||||
|
||||
+16
-14
@@ -35,10 +35,10 @@ import (
|
||||
// - Directory buckets - For directory buckets, you must make requests for this
|
||||
// API operation to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
//
|
||||
@@ -73,13 +73,13 @@ import (
|
||||
// [ListMultipartUploads]
|
||||
//
|
||||
// [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [UploadPart]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
|
||||
// [ListMultipartUploads]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
// [Multipart Upload and Permissions]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
|
||||
// [CompleteMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [CreateMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
|
||||
func (c *Client) AbortMultipartUpload(ctx context.Context, params *AbortMultipartUploadInput, optFns ...func(*Options)) (*AbortMultipartUploadOutput, error) {
|
||||
if params == nil {
|
||||
@@ -106,7 +106,7 @@ type AbortMultipartUploadInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -121,13 +121,12 @@ type AbortMultipartUploadInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -267,6 +266,9 @@ func (c *Client) addOperationAbortMultipartUploadMiddlewares(stack *middleware.S
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpAbortMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+30
-28
@@ -54,10 +54,10 @@ import (
|
||||
// Directory buckets - For directory buckets, you must make requests for this API
|
||||
// operation to the Zonal endpoint. These endpoints support virtual-hosted-style
|
||||
// requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about
|
||||
// endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
// - General purpose bucket permissions - For information about permissions
|
||||
@@ -133,16 +133,16 @@ import (
|
||||
//
|
||||
// [Uploading Objects Using Multipart Upload]: https://docs.aws.amazon.com/AmazonS3/latest/dev/uploadobjusingmpu.html
|
||||
// [Amazon S3 Error Best Practices]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ErrorBestPractices.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
|
||||
// [UploadPart]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
|
||||
// [additional checksum value]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
||||
// [UploadPartCopy]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [CreateMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
|
||||
// [AbortMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
|
||||
// [ListMultipartUploads]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
|
||||
// [Multipart Upload and Permissions]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
//
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
func (c *Client) CompleteMultipartUpload(ctx context.Context, params *CompleteMultipartUploadInput, optFns ...func(*Options)) (*CompleteMultipartUploadOutput, error) {
|
||||
@@ -170,7 +170,7 @@ type CompleteMultipartUploadInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -185,13 +185,12 @@ type CompleteMultipartUploadInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -212,7 +211,7 @@ type CompleteMultipartUploadInput struct {
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 32-bit CRC-32 checksum of the object. For more information, see [Checking object integrity]
|
||||
// Base64 encoded, 32-bit CRC32 checksum of the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
@@ -220,23 +219,23 @@ type CompleteMultipartUploadInput struct {
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 32-bit CRC-32C checksum of the object. For more information,
|
||||
// see [Checking object integrity]in the Amazon S3 User Guide.
|
||||
// Base64 encoded, 32-bit CRC32C checksum of the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC32C *string
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 64-bit CRC-64NVME checksum of the object. The CRC-64NVME
|
||||
// checksum is always a full object checksum. For more information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
// Base64 encoded, 64-bit CRC64NVME checksum of the object. The CRC64NVME checksum
|
||||
// is always a full object checksum. For more information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
//
|
||||
// [Checking object integrity in the Amazon S3 User Guide]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC64NVME *string
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 160-bit SHA-1 digest of the object. For more information, see [Checking object integrity]
|
||||
// Base64 encoded, 160-bit SHA1 digest of the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
@@ -244,7 +243,7 @@ type CompleteMultipartUploadInput struct {
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 256-bit SHA-256 digest of the object. For more information, see [Checking object integrity]
|
||||
// Base64 encoded, 256-bit SHA256 digest of the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
@@ -369,7 +368,7 @@ type CompleteMultipartUploadOutput struct {
|
||||
// encryption with Key Management Service (KMS) keys (SSE-KMS).
|
||||
BucketKeyEnabled *bool
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only
|
||||
// The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only
|
||||
// be present if the checksum was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -380,8 +379,8 @@ type CompleteMultipartUploadOutput struct {
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
||||
ChecksumCRC32 *string
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is
|
||||
// only present if the checksum was uploaded with the object. When you use an API
|
||||
// The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only
|
||||
// present if the checksum was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
// based on the checksum values of each individual part. For more information about
|
||||
@@ -393,13 +392,13 @@ type CompleteMultipartUploadOutput struct {
|
||||
|
||||
// This header can be used as a data integrity check to verify that the data
|
||||
// received is the same data that was originally sent. This header specifies the
|
||||
// Base64 encoded, 64-bit CRC-64NVME checksum of the object. The CRC-64NVME
|
||||
// checksum is always a full object checksum. For more information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
// Base64 encoded, 64-bit CRC64NVME checksum of the object. The CRC64NVME checksum
|
||||
// is always a full object checksum. For more information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
//
|
||||
// [Checking object integrity in the Amazon S3 User Guide]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC64NVME *string
|
||||
|
||||
// The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be
|
||||
// The Base64 encoded, 160-bit SHA1 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. When you use the API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -410,7 +409,7 @@ type CompleteMultipartUploadOutput struct {
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
||||
ChecksumSHA1 *string
|
||||
|
||||
// The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be
|
||||
// The Base64 encoded, 256-bit SHA256 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -548,6 +547,9 @@ func (c *Client) addOperationCompleteMultipartUploadMiddlewares(stack *middlewar
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCompleteMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+42
-27
@@ -31,10 +31,10 @@ import (
|
||||
// - Directory buckets - For directory buckets, you must make requests for this
|
||||
// API operation to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// - VPC endpoints don't support cross-Region requests (including copies). If
|
||||
// you're using VPC endpoints, your source and destination buckets should be in the
|
||||
@@ -135,8 +135,16 @@ import (
|
||||
// retrieval. If the copy source is in a different region, the data transfer is
|
||||
// billed to the copy source account. For pricing information, see [Amazon S3 pricing].
|
||||
//
|
||||
// HTTP Host header syntax Directory buckets - The HTTP Host header syntax is
|
||||
// Bucket-name.s3express-zone-id.region-code.amazonaws.com .
|
||||
// HTTP Host header syntax
|
||||
//
|
||||
// - Directory buckets - The HTTP Host header syntax is
|
||||
// Bucket-name.s3express-zone-id.region-code.amazonaws.com .
|
||||
//
|
||||
// - Amazon S3 on Outposts - When you use this action with S3 on Outposts
|
||||
// through the REST API, you must direct requests to the S3 on Outposts hostname.
|
||||
// The S3 on Outposts hostname takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . The
|
||||
// hostname isn't required when you use the Amazon Web Services CLI or SDKs.
|
||||
//
|
||||
// The following operations are related to CopyObject :
|
||||
//
|
||||
@@ -144,6 +152,7 @@ import (
|
||||
//
|
||||
// [GetObject]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
|
||||
// [Resolve the Error 200 response when copying objects to Amazon S3]: https://repost.aws/knowledge-center/s3-resolve-200-internalerror
|
||||
// [Copy Object Using the REST Multipart Upload API]: https://docs.aws.amazon.com/AmazonS3/latest/dev/CopyingObjctsUsingRESTMPUapi.html
|
||||
@@ -153,8 +162,7 @@ import (
|
||||
// [Transfer Acceleration]: https://docs.aws.amazon.com/AmazonS3/latest/dev/transfer-acceleration.html
|
||||
// [PutObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
|
||||
// [GetObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [Amazon S3 pricing]: http://aws.amazon.com/s3/pricing/
|
||||
func (c *Client) CopyObject(ctx context.Context, params *CopyObjectInput, optFns ...func(*Options)) (*CopyObjectOutput, error) {
|
||||
if params == nil {
|
||||
@@ -181,7 +189,7 @@ type CopyObjectInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Copying objects across different Amazon Web Services Regions isn't supported
|
||||
@@ -202,13 +210,18 @@ type CopyObjectInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must use the
|
||||
// Outpost bucket access point ARN or the access point alias for the destination
|
||||
// bucket.
|
||||
//
|
||||
// You can only copy objects within the same Outpost bucket. It's not supported to
|
||||
// copy objects across different Amazon Web Services Outposts, between buckets on
|
||||
// the same Outposts, or between Outposts buckets and any other bucket types. For
|
||||
// more information about S3 on Outposts, see [What is S3 on Outposts?]in the S3 on Outposts guide. When
|
||||
// you use this action with S3 on Outposts through the REST API, you must direct
|
||||
// requests to the S3 on Outposts hostname, in the format
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . The
|
||||
// hostname isn't required when you use the Amazon Web Services CLI or SDKs.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -596,17 +609,16 @@ type CopyObjectInput struct {
|
||||
// of the officially supported Amazon Web Services SDKs and Amazon Web Services
|
||||
// CLI, see [Specifying the Signature Version in Request Authentication]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Directory buckets - If you specify x-amz-server-side-encryption with aws:kms ,
|
||||
// the x-amz-server-side-encryption-aws-kms-key-id header is implicitly assigned
|
||||
// the ID of the KMS symmetric encryption customer managed key that's configured
|
||||
// for your directory bucket's default encryption setting. If you want to specify
|
||||
// the x-amz-server-side-encryption-aws-kms-key-id header explicitly, you can only
|
||||
// specify it with the ID (Key ID or Key ARN) of the KMS customer managed key
|
||||
// that's configured for your directory bucket's default encryption setting.
|
||||
// Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key
|
||||
// ARN. The key alias format of the KMS key isn't supported. Your SSE-KMS
|
||||
// configuration can only support 1 [customer managed key]per directory bucket for the lifetime of the
|
||||
// bucket. The [Amazon Web Services managed key]( aws/s3 ) isn't supported.
|
||||
// Directory buckets - To encrypt data using SSE-KMS, it's recommended to specify
|
||||
// the x-amz-server-side-encryption header to aws:kms . Then, the
|
||||
// x-amz-server-side-encryption-aws-kms-key-id header implicitly uses the bucket's
|
||||
// default KMS customer managed key ID. If you want to explicitly set the
|
||||
// x-amz-server-side-encryption-aws-kms-key-id header, it must match the bucket's
|
||||
// default customer managed key (using key ID or ARN, not alias). Your SSE-KMS
|
||||
// configuration can only support 1 [customer managed key]per directory bucket's lifetime. The [Amazon Web Services managed key] ( aws/s3
|
||||
// ) isn't supported.
|
||||
//
|
||||
// Incorrect key specification results in an HTTP 400 Bad Request error.
|
||||
//
|
||||
// [customer managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
||||
// [Specifying the Signature Version in Request Authentication]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
|
||||
@@ -951,6 +963,9 @@ func (c *Client) addOperationCopyObjectMiddlewares(stack *middleware.Stack, opti
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCopyObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-3
@@ -39,7 +39,7 @@ import (
|
||||
// https://s3express-control.region-code.amazonaws.com/bucket-name .
|
||||
// Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
//
|
||||
@@ -114,12 +114,12 @@ import (
|
||||
// [DeleteBucket]
|
||||
//
|
||||
// [Creating, configuring, and working with Amazon S3 buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-buckets-s3.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [PutObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [DeleteBucket]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html
|
||||
// [CreateBucket]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_CreateBucket.html
|
||||
// [Virtual hosting of buckets]: https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
//
|
||||
// [DeletePublicAccessBlock]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html
|
||||
// [Directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-overview.html
|
||||
@@ -324,6 +324,9 @@ func (c *Client) addOperationCreateBucketMiddlewares(stack *middleware.Stack, op
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -173,6 +173,9 @@ func (c *Client) addOperationCreateBucketMetadataTableConfigurationMiddlewares(s
|
||||
if err = addRequestChecksumMetricsTracking(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateBucketMetadataTableConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+26
-25
@@ -38,10 +38,10 @@ import (
|
||||
// - Directory buckets - For directory buckets, you must make requests for this
|
||||
// API operation to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Request signing For request signing, multipart upload is just a series of
|
||||
// regular requests. You initiate a multipart upload, send one or more requests to
|
||||
@@ -202,6 +202,7 @@ import (
|
||||
//
|
||||
// [ListMultipartUploads]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
|
||||
// [UploadPart]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
|
||||
// [Protecting Data Using Server-Side Encryption with KMS keys]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html
|
||||
@@ -212,13 +213,12 @@ import (
|
||||
// [Multipart upload API and permissions]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/mpuoverview.html#mpuAndPermissions
|
||||
// [UploadPartCopy]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
||||
// [CompleteMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Authenticating Requests (Amazon Web Services Signature Version 4)]: https://docs.aws.amazon.com/AmazonS3/latest/API/sig-v4-authenticating-requests.html
|
||||
// [AbortMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
|
||||
// [Multipart Upload Overview]: https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html
|
||||
// [Protecting data using server-side encryption with Amazon Web Services KMS]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingKMSEncryption.html
|
||||
// [ListMultipartUploads]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
//
|
||||
// [Specifying server-side encryption with KMS for new object uploads]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
||||
// [Protecting data using server-side encryption with customer-provided encryption keys (SSE-C)]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerSideEncryptionCustomerKeys.html
|
||||
@@ -249,7 +249,7 @@ type CreateMultipartUploadInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -264,13 +264,12 @@ type CreateMultipartUploadInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -658,17 +657,16 @@ type CreateMultipartUploadInput struct {
|
||||
// x-amz-server-side-encryption-aws-kms-key-id , Amazon S3 uses the Amazon Web
|
||||
// Services managed key ( aws/s3 ) to protect the data.
|
||||
//
|
||||
// Directory buckets - If you specify x-amz-server-side-encryption with aws:kms ,
|
||||
// the x-amz-server-side-encryption-aws-kms-key-id header is implicitly assigned
|
||||
// the ID of the KMS symmetric encryption customer managed key that's configured
|
||||
// for your directory bucket's default encryption setting. If you want to specify
|
||||
// the x-amz-server-side-encryption-aws-kms-key-id header explicitly, you can only
|
||||
// specify it with the ID (Key ID or Key ARN) of the KMS customer managed key
|
||||
// that's configured for your directory bucket's default encryption setting.
|
||||
// Otherwise, you get an HTTP 400 Bad Request error. Only use the key ID or key
|
||||
// ARN. The key alias format of the KMS key isn't supported. Your SSE-KMS
|
||||
// configuration can only support 1 [customer managed key]per directory bucket for the lifetime of the
|
||||
// bucket. The [Amazon Web Services managed key]( aws/s3 ) isn't supported.
|
||||
// Directory buckets - To encrypt data using SSE-KMS, it's recommended to specify
|
||||
// the x-amz-server-side-encryption header to aws:kms . Then, the
|
||||
// x-amz-server-side-encryption-aws-kms-key-id header implicitly uses the bucket's
|
||||
// default KMS customer managed key ID. If you want to explicitly set the
|
||||
// x-amz-server-side-encryption-aws-kms-key-id header, it must match the bucket's
|
||||
// default customer managed key (using key ID or ARN, not alias). Your SSE-KMS
|
||||
// configuration can only support 1 [customer managed key]per directory bucket's lifetime. The [Amazon Web Services managed key] ( aws/s3
|
||||
// ) isn't supported.
|
||||
//
|
||||
// Incorrect key specification results in an HTTP 400 Bad Request error.
|
||||
//
|
||||
// [customer managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
||||
// [Amazon Web Services managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
||||
@@ -905,6 +903,9 @@ func (c *Client) addOperationCreateMultipartUploadMiddlewares(stack *middleware.
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateMultipartUploadValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+9
-6
@@ -50,7 +50,7 @@ import (
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com . Path-style
|
||||
// requests are not supported. For more information about endpoints in Availability
|
||||
// Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about endpoints
|
||||
// in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// - CopyObject API operation - Unlike other Zonal endpoint API operations, the
|
||||
// CopyObject API operation doesn't use the temporary security credentials
|
||||
@@ -124,13 +124,13 @@ import (
|
||||
// Bucket-name.s3express-zone-id.region-code.amazonaws.com .
|
||||
//
|
||||
// [Specifying server-side encryption with KMS for new object uploads]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Performance guidelines and design patterns]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-optimizing-performance-guidelines-design-patterns.html#s3-express-optimizing-performance-session-authentication
|
||||
// [CopyObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
// [S3 Express One Zone APIs]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-APIs.html
|
||||
// [HeadBucket]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html
|
||||
// [UploadPartCopy]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Amazon Web Services managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
||||
// [Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
|
||||
// [Example bucket policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
|
||||
@@ -138,7 +138,7 @@ import (
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
||||
// [x-amz-create-session-mode]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html#API_CreateSession_RequestParameters
|
||||
// [Zonal endpoint (object-level) API operations]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-differences.html#s3-express-differences-api-operations
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
func (c *Client) CreateSession(ctx context.Context, params *CreateSessionInput, optFns ...func(*Options)) (*CreateSessionOutput, error) {
|
||||
if params == nil {
|
||||
params = &CreateSessionInput{}
|
||||
@@ -203,8 +203,8 @@ type CreateSessionInput struct {
|
||||
// in the same account that't issuing the command, you must use the full Key ARN
|
||||
// not the Key ID.
|
||||
//
|
||||
// Your SSE-KMS configuration can only support 1 [customer managed key] per directory bucket for the
|
||||
// lifetime of the bucket. The [Amazon Web Services managed key]( aws/s3 ) isn't supported.
|
||||
// Your SSE-KMS configuration can only support 1 [customer managed key] per directory bucket's lifetime.
|
||||
// The [Amazon Web Services managed key]( aws/s3 ) isn't supported.
|
||||
//
|
||||
// [customer managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk
|
||||
// [Amazon Web Services managed key]: https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk
|
||||
@@ -219,7 +219,7 @@ type CreateSessionInput struct {
|
||||
// Amazon S3 encrypts data with SSE-S3. For more information, see [Protecting data with server-side encryption]in the Amazon S3
|
||||
// User Guide.
|
||||
//
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/serv-side-encryption.html
|
||||
ServerSideEncryption types.ServerSideEncryption
|
||||
|
||||
// Specifies the mode of the session that will be created, either ReadWrite or
|
||||
@@ -342,6 +342,9 @@ func (c *Client) addOperationCreateSessionMiddlewares(stack *middleware.Stack, o
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpCreateSessionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-3
@@ -26,7 +26,7 @@ import (
|
||||
// https://s3express-control.region-code.amazonaws.com/bucket-name .
|
||||
// Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
//
|
||||
@@ -49,10 +49,10 @@ import (
|
||||
//
|
||||
// [DeleteObject]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [DeleteObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
|
||||
// [CreateBucket]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
|
||||
func (c *Client) DeleteBucket(ctx context.Context, params *DeleteBucketInput, optFns ...func(*Options)) (*DeleteBucketOutput, error) {
|
||||
if params == nil {
|
||||
@@ -182,6 +182,9 @@ func (c *Client) addOperationDeleteBucketMiddlewares(stack *middleware.Stack, op
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -157,6 +157,9 @@ func (c *Client) addOperationDeleteBucketAnalyticsConfigurationMiddlewares(stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketAnalyticsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -145,6 +145,9 @@ func (c *Client) addOperationDeleteBucketCorsMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketCorsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -182,6 +182,9 @@ func (c *Client) addOperationDeleteBucketEncryptionMiddlewares(stack *middleware
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketEncryptionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
vendor/github.com/aws/aws-sdk-go-v2/service/s3/api_op_DeleteBucketIntelligentTieringConfiguration.go
Generated
Vendored
+3
@@ -159,6 +159,9 @@ func (c *Client) addOperationDeleteBucketIntelligentTieringConfigurationMiddlewa
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketIntelligentTieringConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -157,6 +157,9 @@ func (c *Client) addOperationDeleteBucketInventoryConfigurationMiddlewares(stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketInventoryConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-3
@@ -47,7 +47,7 @@ import (
|
||||
// in the format https://s3express-control.region-code.amazonaws.com/bucket-name
|
||||
// . Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// HTTP Host header syntax Directory buckets - The HTTP Host header syntax is
|
||||
// s3express-control.region.amazonaws.com .
|
||||
@@ -66,8 +66,8 @@ import (
|
||||
// [Authorizing Regional endpoint APIs with IAM]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
|
||||
// [Managing Access Permissions to Your Amazon S3 Resources]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
|
||||
//
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
func (c *Client) DeleteBucketLifecycle(ctx context.Context, params *DeleteBucketLifecycleInput, optFns ...func(*Options)) (*DeleteBucketLifecycleOutput, error) {
|
||||
if params == nil {
|
||||
params = &DeleteBucketLifecycleInput{}
|
||||
@@ -184,6 +184,9 @@ func (c *Client) addOperationDeleteBucketLifecycleMiddlewares(stack *middleware.
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketLifecycleValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -144,6 +144,9 @@ func (c *Client) addOperationDeleteBucketMetadataTableConfigurationMiddlewares(s
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketMetadataTableConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -161,6 +161,9 @@ func (c *Client) addOperationDeleteBucketMetricsConfigurationMiddlewares(stack *
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketMetricsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -142,6 +142,9 @@ func (c *Client) addOperationDeleteBucketOwnershipControlsMiddlewares(stack *mid
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketOwnershipControlsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-3
@@ -20,7 +20,7 @@ import (
|
||||
// in the format https://s3express-control.region-code.amazonaws.com/bucket-name .
|
||||
// Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions If you are using an identity other than the root user of the Amazon
|
||||
// Web Services account that owns the bucket, the calling identity must both have
|
||||
@@ -60,11 +60,11 @@ import (
|
||||
//
|
||||
// [DeleteObject]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [DeleteObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html
|
||||
// [Using Bucket Policies and User Policies]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
|
||||
// [CreateBucket]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
|
||||
func (c *Client) DeleteBucketPolicy(ctx context.Context, params *DeleteBucketPolicyInput, optFns ...func(*Options)) (*DeleteBucketPolicyOutput, error) {
|
||||
if params == nil {
|
||||
@@ -194,6 +194,9 @@ func (c *Client) addOperationDeleteBucketPolicyMiddlewares(stack *middleware.Sta
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketPolicyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -152,6 +152,9 @@ func (c *Client) addOperationDeleteBucketReplicationMiddlewares(stack *middlewar
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketReplicationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -142,6 +142,9 @@ func (c *Client) addOperationDeleteBucketTaggingMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -151,6 +151,9 @@ func (c *Client) addOperationDeleteBucketWebsiteMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteBucketWebsiteValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+20
-16
@@ -41,10 +41,10 @@ import (
|
||||
// - Directory buckets - For directory buckets, you must make requests for this
|
||||
// API operation to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// To remove a specific version, you must use the versionId query parameter. Using
|
||||
// this query parameter permanently deletes the version. If the object deleted is a
|
||||
@@ -97,13 +97,13 @@ import (
|
||||
// [PutObject]
|
||||
//
|
||||
// [Sample Request]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectDELETE.html#ExampleVersionObjectDelete
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Deleting objects from versioning-suspended buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectsfromVersioningSuspendedBuckets.html
|
||||
// [PutObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html
|
||||
// [PutBucketLifecycle]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
// [Deleting object versions from a versioning-enabled bucket]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeletingObjectVersions.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [Using MFA Delete]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingMFADelete.html
|
||||
func (c *Client) DeleteObject(ctx context.Context, params *DeleteObjectInput, optFns ...func(*Options)) (*DeleteObjectOutput, error) {
|
||||
if params == nil {
|
||||
@@ -130,7 +130,7 @@ type DeleteObjectInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -145,13 +145,12 @@ type DeleteObjectInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -186,7 +185,7 @@ type DeleteObjectInput struct {
|
||||
//
|
||||
// This functionality is only supported for directory buckets.
|
||||
//
|
||||
// [RFC 7232]: https://docs.aws.amazon.com/https:/tools.ietf.org/html/rfc7232
|
||||
// [RFC 7232]: https://tools.ietf.org/html/rfc7232
|
||||
IfMatch *string
|
||||
|
||||
// If present, the object is deleted only if its modification times matches the
|
||||
@@ -250,9 +249,11 @@ type DeleteObjectOutput struct {
|
||||
// Indicates whether the specified object version that was permanently deleted was
|
||||
// (true) or was not (false) a delete marker before deletion. In a simple DELETE,
|
||||
// this header indicates whether (true) or not (false) the current version of the
|
||||
// object is a delete marker.
|
||||
// object is a delete marker. To learn more about delete markers, see [Working with delete markers].
|
||||
//
|
||||
// This functionality is not supported for directory buckets.
|
||||
//
|
||||
// [Working with delete markers]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
|
||||
DeleteMarker *bool
|
||||
|
||||
// If present, indicates that the requester was successfully charged for the
|
||||
@@ -343,6 +344,9 @@ func (c *Client) addOperationDeleteObjectMiddlewares(stack *middleware.Stack, op
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+9
-7
@@ -61,13 +61,12 @@ type DeleteObjectTaggingInput struct {
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see [Using access points]in the Amazon S3 User Guide.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
// [Using access points]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
|
||||
@@ -178,6 +177,9 @@ func (c *Client) addOperationDeleteObjectTaggingMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+25
-23
@@ -19,13 +19,13 @@ import (
|
||||
// this operation provides a suitable alternative to sending individual delete
|
||||
// requests, reducing per-request overhead.
|
||||
//
|
||||
// The request can contain a list of up to 1000 keys that you want to delete. In
|
||||
// The request can contain a list of up to 1,000 keys that you want to delete. In
|
||||
// the XML, you provide the object key names, and optionally, version IDs if you
|
||||
// want to delete a specific version of the object from a versioning-enabled
|
||||
// bucket. For each key, Amazon S3 performs a delete operation and returns the
|
||||
// result of that delete, success or failure, in the response. Note that if the
|
||||
// object specified in the request is not found, Amazon S3 returns the result as
|
||||
// deleted.
|
||||
// result of that delete, success or failure, in the response. If the object
|
||||
// specified in the request isn't found, Amazon S3 confirms the deletion by
|
||||
// returning the result as deleted.
|
||||
//
|
||||
// - Directory buckets - S3 Versioning isn't enabled and supported for directory
|
||||
// buckets.
|
||||
@@ -33,10 +33,10 @@ import (
|
||||
// - Directory buckets - For directory buckets, you must make requests for this
|
||||
// API operation to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// The operation supports two modes for the response: verbose and quiet. By
|
||||
// default, the operation uses verbose mode in which the response includes the
|
||||
@@ -104,13 +104,13 @@ import (
|
||||
//
|
||||
// [AbortMultipartUpload]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
|
||||
// [AbortMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html
|
||||
// [UploadPart]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
// [CompleteMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CompleteMultipartUpload.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [MFA Delete]: https://docs.aws.amazon.com/AmazonS3/latest/dev/Versioning.html#MultiFactorAuthenticationDelete
|
||||
// [CreateMultipartUpload]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateMultipartUpload.html
|
||||
func (c *Client) DeleteObjects(ctx context.Context, params *DeleteObjectsInput, optFns ...func(*Options)) (*DeleteObjectsOutput, error) {
|
||||
@@ -138,7 +138,7 @@ type DeleteObjectsInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -153,13 +153,12 @@ type DeleteObjectsInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -189,15 +188,15 @@ type DeleteObjectsInput struct {
|
||||
// For the x-amz-checksum-algorithm header, replace algorithm with the
|
||||
// supported algorithm from the following list:
|
||||
//
|
||||
// - CRC-32
|
||||
// - CRC32
|
||||
//
|
||||
// - CRC-32C
|
||||
// - CRC32C
|
||||
//
|
||||
// - CRC-64NVME
|
||||
// - CRC64NVME
|
||||
//
|
||||
// - SHA-1
|
||||
// - SHA1
|
||||
//
|
||||
// - SHA-256
|
||||
// - SHA256
|
||||
//
|
||||
// For more information, see [Checking object integrity] in the Amazon S3 User Guide.
|
||||
//
|
||||
@@ -351,6 +350,9 @@ func (c *Client) addOperationDeleteObjectsMiddlewares(stack *middleware.Stack, o
|
||||
if err = addRequestChecksumMetricsTracking(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeleteObjectsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -148,6 +148,9 @@ func (c *Client) addOperationDeletePublicAccessBlockMiddlewares(stack *middlewar
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpDeletePublicAccessBlockValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -179,6 +179,9 @@ func (c *Client) addOperationGetBucketAccelerateConfigurationMiddlewares(stack *
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAccelerateConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -174,6 +174,9 @@ func (c *Client) addOperationGetBucketAclMiddlewares(stack *middleware.Stack, op
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -163,6 +163,9 @@ func (c *Client) addOperationGetBucketAnalyticsConfigurationMiddlewares(stack *m
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketAnalyticsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -173,6 +173,9 @@ func (c *Client) addOperationGetBucketCorsMiddlewares(stack *middleware.Stack, o
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketCorsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -188,6 +188,9 @@ func (c *Client) addOperationGetBucketEncryptionMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketEncryptionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -164,6 +164,9 @@ func (c *Client) addOperationGetBucketIntelligentTieringConfigurationMiddlewares
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketIntelligentTieringConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -162,6 +162,9 @@ func (c *Client) addOperationGetBucketInventoryConfigurationMiddlewares(stack *m
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketInventoryConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+6
-3
@@ -57,7 +57,7 @@ import (
|
||||
// in the format https://s3express-control.region-code.amazonaws.com/bucket-name
|
||||
// . Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// HTTP Host header syntax Directory buckets - The HTTP Host header syntax is
|
||||
// s3express-control.region.amazonaws.com .
|
||||
@@ -87,8 +87,8 @@ import (
|
||||
// [Managing Access Permissions to Your Amazon S3 Resources]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
|
||||
// [DeleteBucketLifecycle]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html
|
||||
//
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
func (c *Client) GetBucketLifecycleConfiguration(ctx context.Context, params *GetBucketLifecycleConfigurationInput, optFns ...func(*Options)) (*GetBucketLifecycleConfigurationOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetBucketLifecycleConfigurationInput{}
|
||||
@@ -228,6 +228,9 @@ func (c *Client) addOperationGetBucketLifecycleConfigurationMiddlewares(stack *m
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLifecycleConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+7
-2
@@ -98,8 +98,10 @@ func (in *GetBucketLocationInput) bindEndpointParams(p *EndpointParameters) {
|
||||
type GetBucketLocationOutput struct {
|
||||
|
||||
// Specifies the Region where the bucket resides. For a list of all the Amazon S3
|
||||
// supported location constraints by Region, see [Regions and Endpoints]. Buckets in Region us-east-1
|
||||
// have a LocationConstraint of null .
|
||||
// supported location constraints by Region, see [Regions and Endpoints].
|
||||
//
|
||||
// Buckets in Region us-east-1 have a LocationConstraint of null . Buckets with a
|
||||
// LocationConstraint of EU reside in eu-west-1 .
|
||||
//
|
||||
// [Regions and Endpoints]: https://docs.aws.amazon.com/general/latest/gr/rande.html#s3_region
|
||||
LocationConstraint types.BucketLocationConstraint
|
||||
@@ -183,6 +185,9 @@ func (c *Client) addOperationGetBucketLocationMiddlewares(stack *middleware.Stac
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLocationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -148,6 +148,9 @@ func (c *Client) addOperationGetBucketLoggingMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketLoggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -149,6 +149,9 @@ func (c *Client) addOperationGetBucketMetadataTableConfigurationMiddlewares(stac
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketMetadataTableConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -165,6 +165,9 @@ func (c *Client) addOperationGetBucketMetricsConfigurationMiddlewares(stack *mid
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketMetricsConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -188,6 +188,9 @@ func (c *Client) addOperationGetBucketNotificationConfigurationMiddlewares(stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketNotificationConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -148,6 +148,9 @@ func (c *Client) addOperationGetBucketOwnershipControlsMiddlewares(stack *middle
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketOwnershipControlsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+6
-3
@@ -20,7 +20,7 @@ import (
|
||||
// in the format https://s3express-control.region-code.amazonaws.com/bucket-name .
|
||||
// Virtual-hosted-style requests aren't supported. For more information about
|
||||
// endpoints in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more
|
||||
// information about endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// information about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions If you are using an identity other than the root user of the Amazon
|
||||
// Web Services account that owns the bucket, the calling identity must both have
|
||||
@@ -64,11 +64,11 @@ import (
|
||||
// [GetObject]
|
||||
//
|
||||
// [Bucket policy examples]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/example-bucket-policies.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Example bucket policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
|
||||
// [Using Bucket Policies and User Policies]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-iam-policies.html
|
||||
// [GetObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
// [Amazon Web Services Identity and Access Management (IAM) for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam.html
|
||||
func (c *Client) GetBucketPolicy(ctx context.Context, params *GetBucketPolicyInput, optFns ...func(*Options)) (*GetBucketPolicyOutput, error) {
|
||||
if params == nil {
|
||||
@@ -215,6 +215,9 @@ func (c *Client) addOperationGetBucketPolicyMiddlewares(stack *middleware.Stack,
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketPolicyValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -156,6 +156,9 @@ func (c *Client) addOperationGetBucketPolicyStatusMiddlewares(stack *middleware.
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketPolicyStatusValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -163,6 +163,9 @@ func (c *Client) addOperationGetBucketReplicationMiddlewares(stack *middleware.S
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketReplicationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -142,6 +142,9 @@ func (c *Client) addOperationGetBucketRequestPaymentMiddlewares(stack *middlewar
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketRequestPaymentValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -155,6 +155,9 @@ func (c *Client) addOperationGetBucketTaggingMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -157,6 +157,9 @@ func (c *Client) addOperationGetBucketVersioningMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketVersioningValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -161,6 +161,9 @@ func (c *Client) addOperationGetBucketWebsiteMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetBucketWebsiteValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+19
-24
@@ -32,14 +32,14 @@ import (
|
||||
// Directory buckets - Only virtual-hosted-style requests are supported. For a
|
||||
// virtual hosted-style request example, if you have the object
|
||||
// photos/2006/February/sample.jpg in the bucket named
|
||||
// examplebucket--use1-az5--x-s3 , specify the object key name as
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 , specify the object key name as
|
||||
// /photos/2006/February/sample.jpg . Also, when you make requests to this API
|
||||
// operation, your requests are sent to the Zonal endpoint. These endpoints support
|
||||
// virtual-hosted-style requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about
|
||||
// endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
// - General purpose bucket permissions - You must have the required permissions
|
||||
@@ -152,6 +152,7 @@ import (
|
||||
//
|
||||
// [GetObjectAcl]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [RestoreObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
||||
// [ListBuckets]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListBuckets.html
|
||||
@@ -159,8 +160,7 @@ import (
|
||||
// [Restoring Archived Objects]: https://docs.aws.amazon.com/AmazonS3/latest/dev/restoring-objects.html
|
||||
// [GetObjectAcl]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
|
||||
// [Specifying permissions in a policy]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
//
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
func (c *Client) GetObject(ctx context.Context, params *GetObjectInput, optFns ...func(*Options)) (*GetObjectOutput, error) {
|
||||
@@ -188,7 +188,7 @@ type GetObjectInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -208,13 +208,12 @@ type GetObjectInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -229,13 +228,6 @@ type GetObjectInput struct {
|
||||
Key *string
|
||||
|
||||
// To retrieve the checksum, this mode must be enabled.
|
||||
//
|
||||
// General purpose buckets - In addition, if you enable checksum mode and the
|
||||
// object is uploaded with a [checksum]and encrypted with an Key Management Service (KMS)
|
||||
// key, you must have permission to use the kms:Decrypt action to retrieve the
|
||||
// checksum.
|
||||
//
|
||||
// [checksum]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html
|
||||
ChecksumMode types.ChecksumMode
|
||||
|
||||
// The account ID of the expected bucket owner. If the account ID that you provide
|
||||
@@ -449,34 +441,34 @@ type GetObjectOutput struct {
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only
|
||||
// The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only
|
||||
// present if the object was uploaded with the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC32 *string
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32C checksum of the object. This will only be
|
||||
// The Base64 encoded, 32-bit CRC32C checksum of the object. This will only be
|
||||
// present if the object was uploaded with the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC32C *string
|
||||
|
||||
// The Base64 encoded, 64-bit CRC-64NVME checksum of the object. For more
|
||||
// The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more
|
||||
// information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
//
|
||||
// [Checking object integrity in the Amazon S3 User Guide]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC64NVME *string
|
||||
|
||||
// The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be
|
||||
// The Base64 encoded, 160-bit SHA1 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumSHA1 *string
|
||||
|
||||
// The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be
|
||||
// The Base64 encoded, 256-bit SHA256 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. For more information, see [Checking object integrity]
|
||||
// in the Amazon S3 User Guide.
|
||||
//
|
||||
@@ -738,6 +730,9 @@ func (c *Client) addOperationGetObjectMiddlewares(stack *middleware.Stack, optio
|
||||
if err = addResponseChecksumMetricsTracking(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -206,6 +206,9 @@ func (c *Client) addOperationGetObjectAclMiddlewares(stack *middleware.Stack, op
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectAclValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+19
-14
@@ -24,10 +24,10 @@ import (
|
||||
// Directory buckets - For directory buckets, you must make requests for this API
|
||||
// operation to the Zonal endpoint. These endpoints support virtual-hosted-style
|
||||
// requests in the format
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name .
|
||||
// Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about
|
||||
// endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Permissions
|
||||
//
|
||||
@@ -149,20 +149,20 @@ import (
|
||||
//
|
||||
// [Specifying server-side encryption with KMS for new object uploads]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html
|
||||
// [GetObjectLegalHold]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [ListParts]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListParts.html
|
||||
// [Server-Side Encryption (Using Customer-Provided Encryption Keys)]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
// [GetObjectTagging]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html
|
||||
// [Specifying Permissions in a Policy]: https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html
|
||||
// [RFC 7232]: https://tools.ietf.org/html/rfc7232
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [HeadObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html
|
||||
// [GetObjectLockConfiguration]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
||||
// [GetObjectAcl]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html
|
||||
// [GetObjectRetention]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html
|
||||
// [GetObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
func (c *Client) GetObjectAttributes(ctx context.Context, params *GetObjectAttributesInput, optFns ...func(*Options)) (*GetObjectAttributesOutput, error) {
|
||||
if params == nil {
|
||||
params = &GetObjectAttributesInput{}
|
||||
@@ -188,7 +188,7 @@ type GetObjectAttributesInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -203,13 +203,12 @@ type GetObjectAttributesInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -298,8 +297,11 @@ type GetObjectAttributesOutput struct {
|
||||
|
||||
// Specifies whether the object retrieved was ( true ) or was not ( false ) a
|
||||
// delete marker. If false , this response header does not appear in the response.
|
||||
// To learn more about delete markers, see [Working with delete markers].
|
||||
//
|
||||
// This functionality is not supported for directory buckets.
|
||||
//
|
||||
// [Working with delete markers]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html
|
||||
DeleteMarker *bool
|
||||
|
||||
// An ETag is an opaque identifier assigned by a web server to a specific version
|
||||
@@ -413,6 +415,9 @@ func (c *Client) addOperationGetObjectAttributesMiddlewares(stack *middleware.St
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectAttributesValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -174,6 +174,9 @@ func (c *Client) addOperationGetObjectLegalHoldMiddlewares(stack *middleware.Sta
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectLegalHoldValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -153,6 +153,9 @@ func (c *Client) addOperationGetObjectLockConfigurationMiddlewares(stack *middle
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectLockConfigurationValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -174,6 +174,9 @@ func (c *Client) addOperationGetObjectRetentionMiddlewares(stack *middleware.Sta
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectRetentionValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+9
-7
@@ -70,13 +70,12 @@ type GetObjectTaggingInput struct {
|
||||
// the access point ARN in place of the bucket name. For more information about
|
||||
// access point ARNs, see [Using access points]in the Amazon S3 User Guide.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
// [Using access points]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html
|
||||
@@ -204,6 +203,9 @@ func (c *Client) addOperationGetObjectTaggingMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectTaggingValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -169,6 +169,9 @@ func (c *Client) addOperationGetObjectTorrentMiddlewares(stack *middleware.Stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetObjectTorrentValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+3
@@ -165,6 +165,9 @@ func (c *Client) addOperationGetPublicAccessBlockMiddlewares(stack *middleware.S
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpGetPublicAccessBlockValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+13
-11
@@ -64,14 +64,14 @@ import (
|
||||
// https://bucket-name.s3express-zone-id.region-code.amazonaws.com . Path-style
|
||||
// requests are not supported. For more information about endpoints in Availability
|
||||
// Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about endpoints in
|
||||
// Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [REST Authentication]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
|
||||
// [Example bucket policies for S3 Express One Zone]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html
|
||||
// [Managing access permissions to your Amazon S3 resources]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-access-control.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
func (c *Client) HeadBucket(ctx context.Context, params *HeadBucketInput, optFns ...func(*Options)) (*HeadBucketOutput, error) {
|
||||
if params == nil {
|
||||
params = &HeadBucketInput{}
|
||||
@@ -97,7 +97,7 @@ type HeadBucketInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -118,13 +118,12 @@ type HeadBucketInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -248,6 +247,9 @@ func (c *Client) addOperationHeadBucketMiddlewares(stack *middleware.Stack, opti
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpHeadBucketValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
+26
-20
@@ -117,10 +117,11 @@ import (
|
||||
//
|
||||
// For directory buckets, you must make requests for this API operation to the
|
||||
// Zonal endpoint. These endpoints support virtual-hosted-style requests in the
|
||||
// format https://bucket-name.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints in
|
||||
// Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information about
|
||||
// endpoints in Local Zones, see [Available Local Zone for directory buckets]in the Amazon S3 User Guide.
|
||||
// format
|
||||
// https://amzn-s3-demo-bucket.s3express-zone-id.region-code.amazonaws.com/key-name
|
||||
// . Path-style requests are not supported. For more information about endpoints
|
||||
// in Availability Zones, see [Regional and Zonal endpoints for directory buckets in Availability Zones]in the Amazon S3 User Guide. For more information
|
||||
// about endpoints in Local Zones, see [Concepts for directory buckets in Local Zones]in the Amazon S3 User Guide.
|
||||
//
|
||||
// The following actions are related to HeadObject :
|
||||
//
|
||||
@@ -128,14 +129,14 @@ import (
|
||||
//
|
||||
// [GetObjectAttributes]
|
||||
//
|
||||
// [Concepts for directory buckets in Local Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Server-Side Encryption (Using Customer-Provided Encryption Keys)]: https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerSideEncryptionCustomerKeys.html
|
||||
// [GetObjectAttributes]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html
|
||||
// [Protecting data with server-side encryption]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html
|
||||
// [Actions, resources, and condition keys for Amazon S3]: https://docs.aws.amazon.com/AmazonS3/latest/dev/list_amazons3.html
|
||||
// [GetObject]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObject.html
|
||||
// [Common Request Headers]: https://docs.aws.amazon.com/AmazonS3/latest/API/RESTCommonRequestHeaders.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-Regions-and-Zones.html
|
||||
// [Available Local Zone for directory buckets]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-lzs-for-directory-buckets.html
|
||||
// [Regional and Zonal endpoints for directory buckets in Availability Zones]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/endpoint-directory-buckets-AZ.html
|
||||
//
|
||||
// [CreateSession]: https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html
|
||||
func (c *Client) HeadObject(ctx context.Context, params *HeadObjectInput, optFns ...func(*Options)) (*HeadObjectOutput, error) {
|
||||
@@ -163,7 +164,7 @@ type HeadObjectInput struct {
|
||||
// are not supported. Directory bucket names must be unique in the chosen Zone
|
||||
// (Availability Zone or Local Zone). Bucket names must follow the format
|
||||
// bucket-base-name--zone-id--x-s3 (for example,
|
||||
// DOC-EXAMPLE-BUCKET--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// amzn-s3-demo-bucket--usw2-az1--x-s3 ). For information about bucket naming
|
||||
// restrictions, see [Directory bucket naming rules]in the Amazon S3 User Guide.
|
||||
//
|
||||
// Access points - When you use this action with an access point, you must provide
|
||||
@@ -178,13 +179,12 @@ type HeadObjectInput struct {
|
||||
// Access points and Object Lambda access points are not supported by directory
|
||||
// buckets.
|
||||
//
|
||||
// S3 on Outposts - When you use this action with Amazon S3 on Outposts, you must
|
||||
// direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname
|
||||
// takes the form
|
||||
// AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When you
|
||||
// use this action with S3 on Outposts through the Amazon Web Services SDKs, you
|
||||
// provide the Outposts access point ARN in place of the bucket name. For more
|
||||
// information about S3 on Outposts ARNs, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
// S3 on Outposts - When you use this action with S3 on Outposts, you must direct
|
||||
// requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
|
||||
// form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com . When
|
||||
// you use this action with S3 on Outposts, the destination bucket must be the
|
||||
// Outposts access point ARN or the access point alias. For more information about
|
||||
// S3 on Outposts, see [What is S3 on Outposts?]in the Amazon S3 User Guide.
|
||||
//
|
||||
// [Directory bucket naming rules]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html
|
||||
// [What is S3 on Outposts?]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html
|
||||
@@ -381,7 +381,7 @@ type HeadObjectOutput struct {
|
||||
// Specifies caching behavior along the request/reply chain.
|
||||
CacheControl *string
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32 checksum of the object. This checksum is only
|
||||
// The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only
|
||||
// be present if the checksum was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -392,8 +392,8 @@ type HeadObjectOutput struct {
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
||||
ChecksumCRC32 *string
|
||||
|
||||
// The Base64 encoded, 32-bit CRC-32C checksum of the object. This checksum is
|
||||
// only present if the checksum was uploaded with the object. When you use an API
|
||||
// The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only
|
||||
// present if the checksum was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
// based on the checksum values of each individual part. For more information about
|
||||
@@ -403,13 +403,13 @@ type HeadObjectOutput struct {
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
||||
ChecksumCRC32C *string
|
||||
|
||||
// The Base64 encoded, 64-bit CRC-64NVME checksum of the object. For more
|
||||
// The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more
|
||||
// information, see [Checking object integrity in the Amazon S3 User Guide].
|
||||
//
|
||||
// [Checking object integrity in the Amazon S3 User Guide]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html
|
||||
ChecksumCRC64NVME *string
|
||||
|
||||
// The Base64 encoded, 160-bit SHA-1 digest of the object. This will only be
|
||||
// The Base64 encoded, 160-bit SHA1 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. When you use the API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -420,7 +420,7 @@ type HeadObjectOutput struct {
|
||||
// [Checking object integrity]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums
|
||||
ChecksumSHA1 *string
|
||||
|
||||
// The Base64 encoded, 256-bit SHA-256 digest of the object. This will only be
|
||||
// The Base64 encoded, 256-bit SHA256 digest of the object. This will only be
|
||||
// present if the object was uploaded with the object. When you use an API
|
||||
// operation on an object that was uploaded using multipart uploads, this value may
|
||||
// not be a direct checksum value of the full object. Instead, it's a calculation
|
||||
@@ -454,6 +454,9 @@ type HeadObjectOutput struct {
|
||||
// Size of the body in bytes.
|
||||
ContentLength *int64
|
||||
|
||||
// The portion of the object returned in the response for a GET request.
|
||||
ContentRange *string
|
||||
|
||||
// A standard MIME type describing the format of the object data.
|
||||
ContentType *string
|
||||
|
||||
@@ -723,6 +726,9 @@ func (c *Client) addOperationHeadObjectMiddlewares(stack *middleware.Stack, opti
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpHeadObjectValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -183,6 +183,9 @@ func (c *Client) addOperationListBucketAnalyticsConfigurationsMiddlewares(stack
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketAnalyticsConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Generated
Vendored
+3
@@ -177,6 +177,9 @@ func (c *Client) addOperationListBucketIntelligentTieringConfigurationsMiddlewar
|
||||
if err = addIsExpressUserAgent(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addCredentialSource(stack, options); err != nil {
|
||||
return err
|
||||
}
|
||||
if err = addOpListBucketIntelligentTieringConfigurationsValidationMiddleware(stack); err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user