Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 对aws访问/密钥使用CircleCi环境变量_C#_.net_Amazon Web Services_Api_Circleci - Fatal编程技术网

C# 对aws访问/密钥使用CircleCi环境变量

C# 对aws访问/密钥使用CircleCi环境变量,c#,.net,amazon-web-services,api,circleci,C#,.net,Amazon Web Services,Api,Circleci,我创建了一个简单的API测试来发布文档。端点需要使用AWS访问和密钥进行身份验证。这是我的API测试代码 public static async Task<HttpResponseMessage> PostRequest(string requestUrl, dynamic json = null, byte[] file = null) { var credentials = new ImmutableCredentials(accessKe

我创建了一个简单的API测试来发布文档。端点需要使用AWS访问和密钥进行身份验证。这是我的API测试代码

public static async Task<HttpResponseMessage> PostRequest(string requestUrl, dynamic json = null, byte[] file = null)
        {
            var credentials = new ImmutableCredentials(accessKey, secretKey, null);

            var url= url.SetQueryParams(json);
            var httpContent = new ByteArrayContent(file );

            var response = await client.PostAsync(
                postUrl,
                httpContent,
                regionName: regionName,
                serviceName: serviceName,
                credentials: credentials);

            return response;
        }
公共静态异步任务PostRequest(字符串requestUrl,动态json=null,字节[]文件=null) { var credentials=新的不可变凭证(accessKey、secretKey、null); var url=url.SetQueryParams(json); var httpContent=newbytearraycontent(文件); var response=wait client.PostAsync( 姿势, httpContent, regionName:regionName, serviceName:serviceName, 全权证书:全权证书); 返回响应; } 目前这些凭证是硬编码的(我知道不是很好)。在我的CI管道中,我使用了CircleCi,并将AWS密钥存储在环境变量部分。我现在的问题是如何在测试代码中访问和实现这些变量


我想做的是,我不想在源代码管理中硬编码我的AWS密钥

我使用circleci,但我不使用.net

我已经为circleci项目添加了AWS凭据作为环境变量。之后,我的nodejs代码中不再包含凭证部分。
nodejs的
aws sdk
将使用环境变量获取凭据。我认为,基于.net的应用程序的行为也应该相同

希望这有帮助

参考:

您可以使用存储AWS密钥,然后在CircleCI配置中指定上下文。这将防止将它们保存在代码中。

这很有帮助!非常感谢。