检索 Python 应用程序中的 AWS Secrets Manager 密钥 - AWS Secrets Manager

检索 Python 应用程序中的 AWS Secrets Manager 密钥

在检索密钥时,您可以使用 Secrets Manager 基于 Python 的缓存组件来缓存密钥,以备将来使用。检索已缓存密钥比从 Secrets Manager 中检索密钥的速度要快。由于调用 Secrets Manager API 会产生费用,因此使用缓存可以降低成本。

缓存策略为“最近最少使用 (LRU)”,因此当缓存必须丢弃某个密钥时,它会丢弃最近使用最少的密钥。原定设置下,缓存会每小时刷新一次秘密。您可以配置在缓存中刷新密钥的频率,也可以挂钩到密钥检索中以添加更多功能。

要使用该组件,您必须满足以下条件:

要下载源代码,请参阅 GitHub 上的 Secrets Manager 基于 Python 的缓存客户端组件

要安装组件,请使用以下命令。

$ pip install aws-secretsmanager-caching

例 示例:检索密钥

下面的示例演示了如何获取名为 mysecret 的密钥的密钥值。

import botocore import botocore.session from aws_secretsmanager_caching import SecretCache, SecretCacheConfig client = botocore.session.get_session().create_client('secretsmanager') cache_config = SecretCacheConfig() cache = SecretCache( config = cache_config, client = client) secret = cache.get_secret_string('mysecret')