我正在为AWS的.NET Core应用程序工作。阅读this post后,我在文件夹中添加了一个名为“credentials”(不带扩展名)的文件:“C:\ Users \ Daan \”。在该文本文件中,访问密钥和秘密访问密钥都在那里。遗憾的是,运行我的代码后未设置凭据属性。其他属性(例如区域和配置文件)会根据我的appsettings文件正确设置。更清楚的是,我的程序通过添加到凭证文件来修改凭证文件。
toolkit_artifact_guid = [A GUID]
有人可以解释一下这意味着什么以及我如何解决这个问题?通过修复我的意思是我的凭证文件没有被修改,只是读取设置awsoptions变量的凭证属性。
重要的是要知道我自己创建了这个文件(不是使用CLI),我仔细检查了凭据是否正确以及这是我的代码。此外,我确实有.NET expierence,但我刚开始使用AWS。
YAML.dump(JSON.load(data))
-
答案 0 :(得分:1)
由于第三方扩展和更新,“ toolkit_artifact_guid”可能会填充在“凭据”文件中。
大部分可能是由于适用于Visual Studio的AWS工具包所致。
答案 1 :(得分:1)
我确定您很久以前就弄清楚了为什么它不起作用,但以防万一:通常,凭据和配置文件都放在C中名为 .aws 的文件夹中:\ Users \ YourUser \文件夹。因此,凭证文件的完整路径为 C:\ Users \ YourUser.aws \ credentials
(注意:对于Linux用户,它位于〜/ .aws中,因此〜/ .aws / credentials中)
您不能创建以“。”开头的文件夹名称。使用资源管理器,但是您可以从命令行创建它。只需打开命令提示符,就可以
CD C:\Users\YourUser
mkdir .aws
然后,您可以使用资源管理器将凭据文件和配置文件拖到那里。您可以在配置文件(只是一个没有扩展名的文本文件,与凭据相同)中为每个配置文件设置默认区域,如下所示:
[default]
region = us-west-2
[staging]
region = us-east-2
我相信,toolkit_artifact_guid是由适用于Visual Studio的AWS工具箱创建的,我认为它可以将每个配置文件映射到工具箱用作“最后使用”的配置文件。如果您查看C:\ Users \ YourUser \ AppData \ Local \ AWSToolkit文件夹,则会看到“ MiscSettings.json”,其中包含一个“ LastAcountSelectedKey”节点,该节点可能显示凭证文件中的一个向导(假设您使用Visual Studio中的AWS Explorer窗口/窗格进行任何操作。
在与MiscSettings.json相同的文件夹中,您可能会看到一个名为RegisteredAccounts.json的文件,该文件在 other 中可以存放您的AWS凭证(访问密钥和秘密密钥)。这是您使用AWS工具for PowerShell创建的新配置文件存储的位置(但密钥在此文件中已加密),并且我相信,如果您在Visual Studio的AWS Explorer中创建配置文件,它也会将其存储在此处。您的.NET应用程序在本地运行时,将首先(不是直接,而是通过AWS .NET库)检查RegisteredAccounts.json文件,然后回退到纯文本.aws \ credentials文件。
答案 2 :(得分:0)
根据this link,文档显示:
Visual Studio工具包支持多组凭据 来自任何数量的帐户。每个集合称为配置文件。 将配置文件添加到Visual Studio的工具包时, 凭证可以使用两种机制存储:
已加密并存储在SDK凭据存储中。
适用于.NET的AWS开发工具包和适用于 Windows PowerShell。 SDK凭据存储特定于您的 您计算机上的Windows用户帐户,无法解密或使用 其他地方。
其他AWS开发工具包和 AWS CLI。
要使用Toolkit for Visual Studio,至少要有一个凭据配置文件 必须可从SDK凭据存储或共享库中获得 AWS凭证文件。
SDK凭据存储的位置为C:\Users\<your-windows-logon>\AppData\Local\AWSToolkit
。在该文件夹中,您将看到几个JSON文件:MiscSettings.json和RegisteredAccounts.json。在MiscSettings.json文件中,有一个名为“ LastAcountSelectedKey”的参数,该参数具有向导。示例:
{
"MiscSettings" : {
"AnalyticsCognitoIdentityId" : "<string redacted>",
"AnalyticsMostRecentlyUsedCognitoIdentityPoolId" : "<string redacted>",
"AnalyticsAnonymousCustomerId" : "<string redacted>",
"lastselectedregion" : "us-east-1",
"AnalyticsPermitted" : "true",
"HostedFilesLocation" : "file://C:\\Users\\<your-windows-logon>\\.aws",
"LastAcountSelectedKey" : "<GUID-we-see>"
}
}
我们看到的此GUID是凭据文件中显示的内容:
[default]
aws_access_key_id = ""
aws_secret_access_key = ""
region = us-east-1
toolkit_artifact_guid = GUID-we-see