我正在尝试使用AWS .NET核心SDK在dynamodb中插入记录,但我遇到以下异常:
请求中包含的安全令牌无效。
请在下面找到我为连接它所做的步骤:
在文件中添加了以下代码(出于安全目的删除了凭据)
[default]
aws_access_key_id = xxxxxxxxxxxxxxxxxxxx
aws_secret_access_key = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
将以下代码添加到appsettings.json文件中:
"AWS":{
"Region": "ap-south-1",
"Profile": "default"}
在startup.cs中,我已经在ConfigureServices方法中添加了以下代码:
services.AddDefaultAWSOptions(Configuration.GetAWSOptions());
services.AddAWSService<IAmazonDynamoDB>();
当我使用以下代码执行代码时,我收到异常&#34;请求中包含的安全令牌无效&#34;
我也尝试过从appsettings.json获取accesskey和密钥
"AWS": {
"Region": "ap-south-1",
"AccessKey": "xxxxxxxxxxxxxxxxxxxx",
"SecretKey": "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
在startup.cs文件中的环境变量中设置这些凭据
services.AddDefaultAWSOptions(Configuration.GetAWSOptions());
services.AddMvc();
Environment.SetEnvironmentVariable("AWS_ACCESS_KEY_ID", Configuration["AWS:AccessKey"]);
Environment.SetEnvironmentVariable("AWS_SECRET_ACCESS_KEY", Configuration["AWS:SecretKey"]);
Environment.SetEnvironmentVariable("AWS_REGION", Configuration["AWS:Region"]);
services.AddAWSService<IAmazonDynamoDB>();
在E:\ JenkinsWorkspaces \ v3-stage-release \ AWSDotNetPublic \ sdk \ src \ Core \ Amazon.Runtime \ Pipeline \ ErrorHandler \ HttpErrorResponseExceptionHandler中的Amazon.Runtime.Internal.HttpErrorResponseExceptionHandler.HandleException(IExecutionContext executionContext,HttpErrorResponseException异常)。 cs:第60行 在E:\ JenkinsWorkspaces \ v3-stage-release \ AWSDotNetPublic \ sdk \ src \ Core \ Amazon.Runtime \ Pipeline \ ErrorHandler \ ErrorHandler.cs:中的Amazon.Runtime.Internal.ErrorHandler.ProcessException(IExecutionContext executionContext,Exception exception) 212 在Amazon.Runtime.Internal.ErrorHandler.d__5
1.MoveNext() in E:\JenkinsWorkspaces\v3-stage-release\AWSDotNetPublic\sdk\src\Core\Amazon.Runtime\Pipeline\ErrorHandler\ErrorHandler.cs:line 104 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Amazon.Runtime.Internal.CallbackHandler.<InvokeAsync>d__9
1.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Amazon.Runtime.Internal.CredentialsRetriever.d__71.MoveNext() in E:\JenkinsWorkspaces\v3-stage-release\AWSDotNetPublic\sdk\src\Core\Amazon.Runtime\Pipeline\Handlers\CredentialsRetriever.cs:line 98 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Amazon.Runtime.Internal.RetryHandler.<InvokeAsync>d__10
1.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在Amazon.Runtime.Internal.RetryHandler.d__101.MoveNext() in E:\JenkinsWorkspaces\v3-stage-release\AWSDotNetPublic\sdk\src\Core\Amazon.Runtime\Pipeline\RetryHandler\RetryHandler.cs:line 153 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Amazon.Runtime.Internal.CallbackHandler.<InvokeAsync>d__9
1.MoveNext() ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Amazon.Runtime.Internal.CallbackHandler.d__91.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at Amazon.Runtime.Internal.ErrorCallbackHandler.<InvokeAsync>d__5
1.MoveNext()在E:\ JenkinsWorkspaces \ v3-stage-release \ AWSDotNetPublic \ sdk \ src \ Core \ Amazon.Runtime \ Pipeline \ Handlers \ ErrorCallbackHandler中。 cs:第58行 ---从抛出异常的先前位置开始的堆栈跟踪结束--- 在System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() 在System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(任务任务) 在Amazon.Runtime.Internal.MetricsHandler.d__11.MoveNext() --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) at System.Runtime.CompilerServices.TaskAwaiter
1.GetResult() 在D:.Net Projects \ TraninerExchange \ proj \ TXApi \ DataAccess \ Implementation \ TrainerAccess.cs:第47行的DataAccess.Implementation.TrainerAccess.d__6.MoveNext()中
有人可以帮我解决这个问题吗?
如果我在这里遗漏任何东西,请告诉我。