首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >环境变量和依赖注入.NET核心的AWS SDK配置

环境变量和依赖注入.NET核心的AWS SDK配置
EN

Stack Overflow用户
提问于 2020-09-28 03:16:24
回答 1查看 235关注 0票数 0

我在获取AWS安装扩展来处理环境变量时遇到了问题。

按照AWS Docs + Unofficial Docs上的说明进行操作。

在我的StartUp文件中,我添加了以下配置和服务。

代码语言:javascript
复制
 services.AddDefaultAWSOptions(root.GetAWSOptions());
 services.AddAWSService<IAmazonDynamoDB>();

我的配置包括一个带有AWS设置和环境变量的JSON文件。

代码语言:javascript
复制
    public static IConfigurationRoot Configuration  => new ConfigurationBuilder()
    .SetBasePath(Directory.GetCurrentDirectory())
    .AddJsonFile("appsettings.json", optional: false, reloadOnChange: true)
    .AddEnvironmentVariables()
    .Build();

根据下图和Unofficial Docs。AWS安装程序应尝试从无法提供更高优先级选项的环境变量配置凭据。

但是,我发现它可以导入AWS配置文件,但不能导入环境变量。

我已经在控制台应用程序下的以下repo中调查过是否有人愿意复制。https://github.com/aws/aws-sdk-net/issues/1717

EN

回答 1

Stack Overflow用户

发布于 2020-09-28 03:20:16

我采用了以下解决方法。这很好,但如果知道文档对于.NET核心是不正确的,或者如果我做错了什么,那将是一件很好的事情。

代码语言:javascript
复制
            services.AddSingleton<IAmazonDynamoDB>(sp =>
            {
                var clientConfig = root.GetAWSOptions();
                var credentials = new BasicAWSCredentials(
                    System.Environment.GetEnvironmentVariable("AWS_ACCESS_KEY_ID"),
                    System.Environment.GetEnvironmentVariable("AWS_SECRET_ACCESS_KEY")); // default credentials no need real one                    
                return new AmazonDynamoDBClient(credentials, clientConfig.Region );
            });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64092377

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档