[요청 처리가 실패; 중첩 예외는 입니다. com.amazonaws.services.dynamodbv2.model.AmazonDynamoDBException : 요청에 포함 된 보안 토큰이 유효하지 않습니다. (서비스 : AmazonDynamoDBv2, 상태 코드 : 400, 오류 코드 : UnrecognizedClientException, 요청 ID : VJ8R07B81ANC1047P1ANEDS4CRVV4KQNSO5AEMVJF66Q9ASUAAJG)] 루트 causecom.amazonaws.services.dynamodbv2.model.AmazonDynamoDBException과 : 는 요청에 포함 된 보안 토큰이 잘못되었습니다. (서비스 : AmazonDynamoDBv2, 상태 코드 : 400, 오류 코드 : UnrecognizedClientException, 요청 ID : VJ8R07B81ANC1047P1ANEDS4CRVV4KQNSO5AEMVJF66Q9ASUAAJG)
실제 DynamoDB의 엔드 포인트와는 EC2 인스턴스에서 실행. 그러나 응용 프로그램을 실행하고 로컬 DynamoDB에서이를 가리키면 작동합니다.
누구든지 해결책을 찾았습니까? 감사.
여기에 나는 또한 응용 프로그램이 실제 DynamoDB의 엔드 포인트를 지적 실행 시도
@Configuration
@EnableDynamoDBRepositories(basePackages = "**.****.***.repository")
public class DynamoConfig {
@Value("${aws.secret.key}")
private String awsSecretKey;
@Value("${aws.access.key}")
private String awsAccessKey;
@Value("${aws.dynamodb.endpoint}")
private String awsDynamoDBEndpoint;
@Value("${aws.region}")
private String awsRegion;
@Bean
public AmazonDynamoDB amazonDynamoDB() {
AmazonDynamoDBClientBuilder amazonDynamoDB = AmazonDynamoDBClientBuilder.standard()
.withCredentials(new AWSStaticCredentialsProvider(amazonAWSCredentials()))
.withEndpointConfiguration(new AwsClientBuilder.EndpointConfiguration(awsDynamoDBEndpoint, awsRegion));
// amazonDynamoDB.setSignerRegionOverride(Regions.fromName(awsRegion).getName());
// if (!StringUtils.isEmpty(awsDynamoDBEndpoint)) {
// amazonDynamoDB.setEndpoint(awsDynamoDBEndpoint);
// }
return amazonDynamoDB.build();
}
@Bean
public AWSCredentials amazonAWSCredentials() {
return new BasicAWSCredentials(awsAccessKey, awsSecretKey);
}
}
P.S, 나도 같은 오류가 발생하고 DynamoDB의
내 설정이다.
Dynamo에 전화하는 데 사용하는 코드를 표시 할 수 있습니까? – TheOni
안녕하세요, 내 설정을 볼 수 있도록 내 게시물을 편집했습니다. – kkeda
코드가 잘된 것처럼 보입니다. 자격 증명을 만들 때 액세스 키와 암호 키가 잘되어 있는지 확인 했습니까? aws 설명서에 명시된 바와 같이 액세스 키 ID 또는 보안 토큰이 유효하지 않은 경우 UnrecognizedClientException이 발생합니다. – TheOni