3

我一直在努力在 .NET Core 上实现秘密管理器。它总是在 GetSecretValueAsync 方法调用上向我返回 Socket Exception 和 HTTPRequestException,而它在我的同事 PC 上工作。

SocketException:尝试对无法访问的网络进行套接字操作 HttpRequestException:尝试对无法访问的网络进行套接字操作 HttpRequestException 套接字异常

我已经在 Windows 上的 C:\Users\USERNAME.aws\credentials 以及每个 IIS App Pool .aws 文件夹中设置了 AWS 默认配置文件所需的凭证文件。所有凭证都以 UTF-8 格式存储,以前是 ANSI。

这是我通过 MFA 身份验证获得的凭据示例: AWS 凭证文件 这是我的 aws 凭据配置和文件夹位置: 凭据位置 我与同事的设置大多相同。现在我几乎走到了尽头。如果有人有经验或愿意帮助我解决此问题的 AWS Web 服务团队,请告诉我。谢谢你。干杯。

var data = secretManager.GetSecretValueAsync(
    new GetSecretValueRequest
    {
        SecretId = configName
    }
).Result;

更新:我在这里发现了真正的问题,但仍然没有解决方案。因为我真的看不到秘密管理器从哪里获得凭据。供您参考,此方法适用于我 PC 中的 .NET Framework。 发现问题

4

2 回答 2

1

需要更多信息来帮助。1. aws 凭证的路径通常是 C:\Users\USERNAME.aws\ 而不是 C:\Users\USERNAME.aws\
2. 在这个文件夹中应该是一个名为config区域定义的文件。放置配置 AWS Secrets Manager 的区域。这里有一个例子

[default]
region = us-east-1

如果这无助于描述配置,请

于 2019-04-16T04:32:19.063 回答
0

我终于在这里找到了真正的问题。这实际上是因为我需要允许 IIS_IUSRS 组用户访问 IIS 系统配置文件文件夹。谢谢大家!

IIS 系统配置文件文件夹

于 2019-04-16T10:32:59.313 回答