Skip to content

Support selectable auth schemes #4203

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 12 commits into
base: main
Choose a base branch
from

Conversation

ysaito1001
Copy link
Contributor

@ysaito1001 ysaito1001 commented Jul 10, 2025

semver-hazards check failure will be resolved when #4211 is released from aws-sdk-rust

Description

Add support for auth scheme preference, which allows customers to re-prioritize the order of auth schemes originally determined by the auth scheme resolver. See the changelog where the auth scheme preference can be configured.

Note: The preference list is merely a hint rather than a strict override. Any auth schemes not included in the originally resolved auth schemes will be ignored, and won't be an error.

To support the implementation, a utility method has been added to NowOrLater to map an inner future.

Testing

Those called out in the feature spec:

Checklist

  • For changes to the smithy-rs codegen or runtime crates, I have created a changelog entry Markdown file in the .changelog directory, specifying "client," "server," or both in the applies_to key.
  • For changes to the AWS SDK, generated SDK code, or SDK runtime crates, I have created a changelog entry Markdown file in the .changelog directory, specifying "aws-sdk-rust" in the applies_to key.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Copy link

A new generated diff is ready to view.

A new doc preview is ready to view.

Copy link

A new generated diff is ready to view.

A new doc preview is ready to view.

@ysaito1001 ysaito1001 marked this pull request as ready for review July 10, 2025 16:05
@ysaito1001 ysaito1001 requested review from a team as code owners July 10, 2025 16:05
Copy link
Contributor

@aajtodd aajtodd left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overall looks good

Copy link
Contributor

@landonxjames landonxjames left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice!

Copy link

A new generated diff is ready to view.

A new doc preview is ready to view.

@ysaito1001 ysaito1001 requested a review from aajtodd July 15, 2025 16:58
Copy link

A new generated diff is ready to view.

A new doc preview is ready to view.

ysaito1001 added a commit that referenced this pull request Jul 15, 2025
…4211)

## Motivation and Context
This PR is a prerequisite for #4203.

# Details
PR4203 has updated some of the `AuthSchemeId` string values, which
causes the `no_auth` test to fail in the semver hazards check. This
happens because the inner string value for `NO_AUTH_SCHEME_ID` has been
modified from `no_auth` to `noAuth`.

To resolve this, this PR updates the test expectation so that it no
longer depends on raw string values. Once this PR is merged and released
from `aws-sdk-rust`, PR4203 should pass the semver hazards check
successfully.

Also the test has been moved to `no_auth.rs` since it is not specific to
S3 Express; it was originally placed in `express.rs` because the issue
was first discovered while investigating S3 Express behavior.

----

_By submitting this pull request, I confirm that you can use, modify,
copy, and redistribute this contribution, under the terms of your
choice._
Copy link

A new generated diff is ready to view.

A new doc preview is ready to view.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants