我将密钥存储在 aws 密钥管理器中。旋转后有 2 个阶段标签 AWSCURRENT 和 AWSPREVIOUS
我们可以将 AWSPREVIOUS 更新/重命名为 TESTJK 我尝试了下面的代码,但我没有抛出任何错误,但它没有达到我的预期
我期待什么
将 AWSPREVIOUS 重命名为 TESTJK 并保持机密值不变
GetSecretValueRequest getSecretValueRequest = new GetSecretValueRequest().withSecretId(secretKey)
.withVersionStage("AWSPREVIOUS");
GetSecretValueResult getSecretValueResult = client.getSecretValue(getSecretValueRequest);
log.info("jkdata ww {}", getSecretValueResult.getSecretString());
log.info("verison id{}", getSecretValueResult.getVersionId());
UpdateSecretVersionStageRequest updateSecretVersionStageRequest = new UpdateSecretVersionStageRequest()
.withSecretId(secretKey)
.withMoveToVersionId(getSecretValueResult.getVersionId())
.withRemoveFromVersionId(getSecretValueResult.getVersionId());
client.updateSecretVersionStage(updateSecretVersionStageRequest).setName("TESTJK");
预期:
它将 AWSPREVIOUS 重命名为 TESTJK,所以下次如果我使用 AWSPREVIOUS 查询我会得到错误,如果我使用 TESTJK 查询我应该得到秘密值。
当前:我得到 AWSPREVIOUS 的价值,但 TESTJK 的错误
com.amazonaws.services.secretsmanager.model.ResourceNotFoundException: Secrets Manager can’t find the specified secret value for staging label: TESTJK (Service: AWSSecretsManager; Status Code: 400; Error Code: ResourceNotFoundException; Request ID: 4c15706e-e1bd-424a-ba03-4914e6523a34)