amazon-web-services - 如何使用 AWS CLI 在 Secret Manager 下删除过去 6 个月未检索到的 AWS Secret
问题描述
我们在 AWS 秘密管理器中创建了许多秘密。我需要帮助才能知道如何批量删除过去 60 天内未使用/检索的所有 AWS 机密(在机密管理器下)。我试图找到一个 AWS CLI 命令来执行此操作,但没有任何效果。
解决方案
调用list_secrets()
返回:
{
'SecretList': [
{
'ARN': 'string',
'Name': 'string',
'Description': 'string',
'KmsKeyId': 'string',
'RotationEnabled': True|False,
'RotationLambdaARN': 'string',
'RotationRules': {
'AutomaticallyAfterDays': 123
},
'LastRotatedDate': datetime(2015, 1, 1),
'LastChangedDate': datetime(2015, 1, 1),
'LastAccessedDate': datetime(2015, 1, 1),
'DeletedDate': datetime(2015, 1, 1),
...
},
],
'NextToken': 'string'
}
LastAccessedDate
看起来它对你有用。您可以将它与 AWS CLI 一起使用,如下所示:
aws secretsmanager list-secrets --query 'SecretList[?LastAccessedDate<`2021-06-01`].ARN'
如果你擅长编写 shell 脚本,你可以编写一个脚本然后删除返回的秘密。否则,我建议使用编程语言(例如 Python)来执行它,因为它可能比 Shell 脚本更容易一些。
推荐阅读
- excel - 为什么 .CopyPicture 返回的分辨率与手动复制图片不同?
- javascript - 视差滚动-上一页的文本显示在下一页的顶部
- javascript - Javascript:如何等待评估函数?
- postgresql - Docker:无法从 Docker 容器连接到远程 Postgres 服务器
- c - 我使用 ENTER 编写了一个程序来停止该程序,但它不工作
- scala - 将 CSV 从本地机器加载到在 Docker 上运行的 spark
- rest - 遵循 RFC 6570 处理 AND 和 OR 逻辑的 API URI 格式
- python - 添加噪声后图像测试精度提高
- selenium - 调整chromedriver窗口大小时Selenium找不到元素
- python - 如何在线程内获取有关我的组合框的信息