下面的代码在Console应用程序中工作,但在从Windows服务中运行相同的代码时不工作。我们已确保运行服务的用户帐户已获得许可,但不幸的是,我们仍然收到下面的错误消息。
是否有任何选项可以尝试对此进行故障排除,或者为什么我们可能会从服务中获得此错误。
var awsOptions = new AWSOptions() {
Region = Amazon.RegionEndpoint.USEast1,
ProfilesLocation = "E:\\AWS\\credentials"
};
var buckets = await awsOptions.CreateServiceClient<Amazon.S3.IAmazonS3> ().ListBucketsAsync(default);
Console.WriteLine(string.Join(Environment.NewLine, buckets.Buckets.Select(x => x.BucketName)));
字符集
错误消息...
无法从EC2示例元数据服务获取IAM安全凭据。
Amazon.Runtime.AmazonServiceException:无法从EC2示例元数据服务获取IAM安全凭据。在亚马逊。运行时间DefaultInstanceProfileAWSCreductions。Amazon上的FetchCredentials()。运行时间。DefaultInstanceProfileAWSCreductions。getCredentials()在Amazon。运行时间。DefaultInstanceProfileAWSCreductions。getCredentialsAsync()在Amazon。运行时间。内部。凭证检索器。InvokeAsync [T](IExecutionContext executionContext)。运行时间。内部。RetryHandler。InvokeAsync [T](IExecutionContext executionContext)。运行时间。内部。RetryHandler。InvokeAsync [T](IExecutionContext executionContext)。运行时间。内部。CallbackHandler。InvokeAsync [T](IExecutionContext executionContext)。运行时间。内部。CallbackHandler。InvokeAsync [T](IExecutionContext executionContext)at Amazon.S3.Internal.AmazonS3ExceptionHandler.InvokeAsync [T](IExecutionContext executionContext)at Amazon.运行时间。内部。ErrorCallbackHandler。InvokeAsync [T](IExecutionContext executionContext)。运行时间。内部。MetricsHandler。InvokeAsync [T](IExecutionContext executionContext)在Gaige。工作测试ConfigurationTestJob。C中的TestJob():\Users\gmarx\source\repos\institutional-claims\Gaige。作业\测试\配置测试作业。cs:系统中的第53行。RuntimeMethodHandle。系统中的InvokeMethod(Object target,Void**arguments,Signature sig,Boolean isConstructor)。反射。MethodInvoker。Invoke(Object obj,IntPtr * args,BindingFlags invokeAttr)
1条答案
按热度按时间ybzsozfc1#
这与服务的Hangfire服务器结合使用。它在尝试注入凭证时失败,但在从服务内部示例化时成功。这是我们目前能够找到的解决方法。
字符集