SecretsManagerCache
适用于从 Secrets Manager 请求的密钥的内存中缓存。您使用 GetSecretString 或 GetSecretBinary 从缓存中检索密钥。您可以通过传入构造函数中的 SecretCacheConfiguration 对象来配置缓存设置。
有关包括示例在内的更多信息,请参阅 检索 .NET 应用程序中的 AWS Secrets Manager 密钥。
构造函数
public SecretsManagerCache()
适用于
SecretsManagerCache
对象的默认构造函数。public SecretsManagerCache(IAmazonSecretsManager secretsManager)
使用 Secrets Manager 客户端(使用提供的 AmazonSecretsManagerClient 创建)构造新缓存。使用此构造函数可自定义 Secrets Manager 客户端,例如使用某一特定区域或终端节点。
参数
- secretsManager
-
要从中检索密钥的 AmazonSecretsManagerClient。
public SecretsManagerCache(SecretCacheConfiguration config)
使用提供的 SecretCacheConfiguration 构造新密钥缓存。使用此构造函数来配置缓存,例如要缓存的密钥数量及其刷新频率。
参数
- config
-
一个 SecretCacheConfiguration,其中包含缓存的配置信息。
public SecretsManagerCache(IAmazonSecretsManager secretsManager, SecretCacheConfiguration config)
-
使用 Secrets Manager 客户端(使用提供的 AmazonSecretsManagerClient 和 SecretCacheConfiguration 创建)构造新缓存。使用此构造函数可自定义 Secrets Manager 客户端,例如使用某一特定区域或终端节点以及配置缓存,例如要缓存的密钥数量及其刷新频率。
参数
- secretsManager
-
要从中检索密钥的 AmazonSecretsManagerClient。
- config
-
一个 SecretCacheConfiguration,其中包含缓存的配置信息。
方法
GetSecretString
public async Task<String> GetSecretString(String
secretId)
从 Secrets Manager 中检索字符串密钥。
参数
- secretId
-
要检索的密钥的 ARN 或名称。
GetSecretBinary
public async Task<byte[]> GetSecretBinary(String secretId)
从 Secrets Manager 中检索二进制密钥。
参数
- secretId
-
要检索的密钥的 ARN 或名称。
RefreshNowAsync
public async Task<bool> RefreshNowAsync(String
secretId)
请从 Secrets Manager 请求密钥值,并使用任何更改更新缓存。如果没有现有的缓存条目,请创建一个新缓存条目。如果刷新成功,则返回 true
。
参数
- secretId
-
要检索的密钥的 ARN 或名称。
GetCachedSecret
public SecretCacheItem GetCachedSecret(string
secretId)
返回指定密钥的缓存条目(如果缓存中存在该密钥)。否则,从 Secret Manager 中该检索密钥,并创建一个新缓存条目。
参数
- secretId
-
要检索的密钥的 ARN 或名称。