Comments (5)
This is one of the awkward parts of the SDK where we have a circular dependency because the AWS credentials resolution and types all exist in Core but some credential profiles require AWSSDK.SecurityToken
or other service clients but those service clients depend on core. This runtime dependency based approach is how we have solved the problem so far. I suspect we will need to revisit this design in the future as we try and add support for things like Native AOT which isn't going to like this approach.
from aws-dotnet-extensions-configuration.
AWSSDK.SecurityToken
is a runtime optional dependency needed depending on how the AWS credentials are sourced to the application. In fact this is the state for all of our libraries. We don't automatically include it because most production use cases don't need it and users want to keep the deployment bundles small. Especially for Lambda use cases.
With EKS credentials are often sourced via web identity token provided by EKS to the container. To turn the web identity token into AWS credentials AWSSDK.SecurityToken
is used. Lambda uses environment variables and ECS and EC2 use a local network lookup so AWSSDK.SecurityToken
is not needed in those use cases.
from aws-dotnet-extensions-configuration.
Thanks for the clarification @normj. Is there anywhere this is documented? Could this not be perhaps a more intentional error, perhaps containing this information? As it stands, it looks more like a bug that the application has a missing dependency rather than something intended.
from aws-dotnet-extensions-configuration.
This is perhaps a documentation issue and Readme needs to document possible dependency on AWSSDK.SecurityToken
.
from aws-dotnet-extensions-configuration.
⚠️ COMMENT VISIBILITY WARNING⚠️
Comments on closed issues are hard for our team to see.
If you need more assistance, please either tag a team member or open a new issue that references this one.
If you wish to keep having a conversation with other community members under this issue feel free to do so.
from aws-dotnet-extensions-configuration.
Related Issues (20)
- AWS Parameter Store - Loading and Processing Sequence of Operations HOT 5
- Configuring a Dictionary HOT 3
- AppConfigProcessor to expose LastConfigVersion as part of the GetDataAsync HOT 5
- ssm:GetParametersByPath permission is required HOT 2
- Unable to load params from AWS Param Store HOT 7
- "AddSystemsManager" method doesn't work with DI and .Net 6 HOT 6
- Missing documentation for loading Secret Manager secrets as SSM parameters HOT 3
- AddSystemsManager Takes 1+ Minutes to Complete HOT 3
- JsonParameterProcessor::ProcessParameters fails when different objects share property names HOT 4
- Loading AppConfig feature flags into strong-type options HOT 7
- Support for the AWS Lambda Extension HOT 4
- NotImplementedException - application/json; charset=utf-8 HOT 6
- AddSystemsManager with SecretsManager path resolves parameters with ':' prefix HOT 4
- Duplicate SSM parameter with different Case cause the whole SSM parameter fail to load HOT 10
- 5.1.1 breaks existing application using StringList HOT 6
- amazon.extensions.configuration.systemsmanager is missing NuGet package README file
- AddAppConfig default encapsulation HOT 1
- Add manual reload ability HOT 3
- Is there a dev mode that works with local config? HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from aws-dotnet-extensions-configuration.