Skip to content

Improve availability of instance profile credentials provider during outages. #2989

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

Merged
merged 4 commits into from
Mar 28, 2022

Conversation

millems
Copy link
Contributor

@millems millems commented Jan 25, 2022

This is done by allowing services to validate credential expiration time during IMDS outages instead of assuming the SDK has access to the latest valid expiration time.

Additional changes:

  1. Removed unnecessary intellij inspections that have frequent false positives.
  2. Include SDK user-agent in container credential provider calls.
  3. Allow specifying the profile file and name used by the instance profile credentials provider.
  4. Use the client's profile file and name for instance profile credentials when the default credentials provider is not overridden.
  5. Convert the HttpCredentialsProvider protected API to a public API (with some breaking changes), so that there's fewer public classes extending internal classes.

@millems millems requested a review from a team as a code owner January 25, 2022 20:02
@millems millems force-pushed the millem/imds-improvements branch from e518f6b to 555302c Compare January 25, 2022 20:43
@millems millems force-pushed the millem/imds-improvements branch from 555302c to 5c0b81e Compare January 27, 2022 18:26
…outages.

This is done by allowing services to validate credential expiration time during IMDS outages instead of assuming the SDK has access to the latest valid expiration time.

Additional changes:
1. Removed unnecessary intellij inspections that have frequent false positives.
2. Include SDK user-agent in container credential provider calls.
3. Allow specifying the profile file and name used by the instance profile credentials provider.
4. Use the client's profile file and name for instance profile credentials when the default credentials provider is not overridden.
5. Convert the HttpCredentialsProvider protected API to a public API (with some breaking changes), so that there's fewer public classes extending internal classes.
@millems millems force-pushed the millem/imds-improvements branch from 5c0b81e to 52502b6 Compare January 27, 2022 18:59
@millems
Copy link
Contributor Author

millems commented Jan 27, 2022

Closing without merging, because this will be merged in the future.

@millems millems closed this Jan 27, 2022
@sonarqubecloud
Copy link

SonarCloud Quality Gate failed.    Quality Gate failed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 7 Code Smells

83.1% 83.1% Coverage
4.8% 4.8% Duplication

@millems millems reopened this Mar 28, 2022
@millems millems enabled auto-merge (squash) March 28, 2022 21:05
@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!    Quality Gate passed

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities
Security Hotspot A 0 Security Hotspots
Code Smell A 15 Code Smells

89.4% 89.4% Coverage
2.7% 2.7% Duplication

@millems millems merged commit 3f67bf7 into master Mar 28, 2022
millems added a commit that referenced this pull request Apr 4, 2022
millems added a commit that referenced this pull request Apr 5, 2022
This improves the behavior introduced in #2989 if the customer is using a mock IMDS endpoint with aggressively short session durations.
millems added a commit that referenced this pull request Apr 5, 2022
This improves the behavior introduced in #2989 if the customer is using a mock IMDS endpoint with aggressively short session durations.
@millems millems deleted the millem/imds-improvements branch October 19, 2022 19:35
aws-sdk-java-automation added a commit that referenced this pull request Apr 18, 2024
…ab458244d

Pull request: release <- staging/165afde2-4825-4e97-9e28-800ab458244d
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.

2 participants