Max*_*lan 6 amazon-web-services aws-secrets-manager
我从 boto3 开始,但意识到这也适用于 CLI。
我读到了一些问题,建议我可以像这样设置过滤器来获取带有 Production 或 Staging 名称的秘密:
res = sm.list_secrets(Filters=[
{ 'Key': 'tag-key', 'Values': ['Name'] },
{ 'Key': 'tag-value', 'Values': ['Production', 'Staging'] },
])
Run Code Online (Sandbox Code Playgroud)
但这似乎是在寻找任何带有 Name 键的东西和任何带有 Prod/Staging 值的东西(在不同的标签中),而不是 Name=Prod/Staging。
如果我在秘密上创建 2 个标记:值:项目:栏和名称:foo。然后尝试过滤项目:foo - 我得到了这个秘密。
sec.list_secrets(Filters= [{ 'Key':'tag-key','Values':['project']},{ 'Key':'tag-value','Values':['foo']}])["SecretList"][0]["Tags"]
[{'Key': 'project', 'Value': 'bar'}, {'Key': 'Name', 'Value': 'foo'}]
Run Code Online (Sandbox Code Playgroud)
或者,如果我添加“something:max”并过滤 Name 和 max :
sec.list_secrets(Filters= [{ 'Key':'tag-key','Values':['Name']},{ 'Key':'tag-value','Values':['max']}])["SecretList"][0]["Tags"]
[{'Key': 'project', 'Value': 'bar'}, {'Key': 'something', 'Value': 'max'}, {'Key': 'Name', 'Value': 'foo'}]
Run Code Online (Sandbox Code Playgroud)
如果我创建第二个秘密以使其更加明显,CLI 上也会发生同样的情况。两者都有一个项目键和一个值 max :
aws secretsmanager list-secrets --filters Key=tag-key,Values=project Key=tag-value,Values=max --query SecretList[].Tags --output text
project max
something else
project bar
something max
Name foo
Run Code Online (Sandbox Code Playgroud)
所以,我的问题是,除了使用列表后循环来检查实际的键:值对之外,我可以使过滤器仅显示 tag=Value 的结果吗?
ec2 上常见的描述标签不适用于 Secrets,并且 tag:tagname=value 在过滤器中不起作用...
| 归档时间: |
|
| 查看次数: |
1067 次 |
| 最近记录: |