AWS .NET SDK中找不到凭证

8

我正在尝试使用AWS .NET SDK创建Web应用程序。我正在使用凭证文件添加我的凭证。在我的web.config中,它看起来像这样:

<add key="AWSProfileName" value="profilename" />
<add key="AWSProfilesLocation" value="C:\AWS\credentials" />
<add key="AWSRegion" value="eu-west-1" />

我的凭据文件长这样,它位于路径C:\AWS下,保存在credentials.txt的标题下。

[myname]
aws_access_key_id = my key
aws_secret_access_key = my s key

根据这份文件http://docs.aws.amazon.com/AWSSdkDocsNET/V2/DeveloperGuide/net-dg-config-creds.html,设置已经正确。我已经使用IAM管理员角色设置了配置文件,并且密钥与创建时给出的密钥匹配。

然而,当我尝试创建一个EC2Client对象时,我遇到了这个错误

无法找到凭证

异常1 / 4:

System.ArgumentException:App.config不包含凭证信息。请添加AWSAccessKey和AWSSecretKey或AWSProfileName。

在Amazon.Runtime.StoredProfileAWSCredentials..ctor(String profileName, String profilesLocation) in d:\Jenkins\jobs\build-sdk-v2\workspace\sdk\src\AWSSDK_DotNet35\Amazon.Runtime\AWSCredentials.cs:line 318

在Amazon.Runtime.EnvironmentAWSCredentials..ctor() in d:\Jenkins\jobs\build-sdk-v2\workspace\sdk\src\AWSSDK_DotNet35\Amazon.Runtime\AWSCredentials.cs:line 590

在Amazon.Runtime.FallbackCredentialsFactory.b__1() in d:\Jenkins\jobs\build-sdk-v2\workspace\sdk\src\AWSSDK_DotNet35\Amazon.Runtime\AWSCredentials.cs:line 1117

在Amazon.Runtime.FallbackCredentialsFactory.GetCredentials(Boolean fallbackToAnonymous) in d:\Jenkins\jobs\build-sdk-v2\workspace\sdk\src\AWSSDK_DotNet35\Amazon.Runtime\AWSCredentials.cs:line 1137

我知道我可以将密钥硬编码到web.config中或使用SDK存储,但我需要以这种方式完成。为什么我的代码找不到我的凭证文件?

1个回答

5

需要将Credentials.txt文件转换为通用的Windows文件(.file),以便应用程序能够识别它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接