凭据管家客户端(SecretsManager Client)基于KMS凭据管家API封装了业务逻辑、最佳实践和设计模式,更易于开发者在业务系统中集成。主要适用于应用中动态使用托管在凭据管家中的凭据,告别对敏感信息的硬编码。
功能特性
凭据管家客户端具有以下功能特性:
- 支持开发者在应用中快速集成凭据管家能力,一行代码读取凭据信息。
- 封装凭据在应用中缓存和刷新的功能。
- 封装API错误的重试机制,智能处理服务端错误。
- 开放插件式设计模式,支持开发者自定义扩展缓存、错误重试等功能模块。
安装SDK
凭据管家客户端支持Java语言,您可以访问凭据管家开源代码仓库了解更多代码信息。
您可以通过Maven的方式在项目中使用凭据管家Java客户端,需要添加的依赖信息如下:
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>alibabacloud-secretsmanager-client</artifactId>
<version>x.x.x</version>
</dependency>
说明 凭据管家客户端具体版本,请参见alibabacloud-secretsmanager-client release。
示例代码
- 一般代码
- 通过系统环境变量构建客户端:
SecretCacheClient client = SecretCacheClientBuilder.newClient(); SecretInfo secretInfo = client.getSecretInfo("#secretName#");
- 通过指定参数(Access Key、Access Secret、RegionID等)构建客户端:
SecretCacheClient client = SecretCacheClientBuilder.newCacheClientBuilder( BaseSecretManagerClientBuilder.standard().withCredentialsProvider(CredentialsProviderUtils .withAccessKey("#accessKeyId#", "#accessKeySecret#")).withRegion("#regionId#").build()).build(); SecretInfo secretInfo = client.getSecretInfo("#secretName#");
- 通过系统环境变量构建客户端:
- 定制化代码
通过自定义参数构建客户端:
SecretCacheClient client = SecretCacheClientBuilder.newCacheClientBuilder(BaseSecretManagerClientBuilder.standard() .withCredentialsProvider(CredentialsProviderUtils.withAccessKey("#accessKeyId#", "#accessKeySecret#")) .withRegion("#regionId#").withBackoffStrategy(new FullJitterBackoffStrategy(3, 2000, 10000)).build()) .withCacheSecretStrategy(new FileCacheSecretStoreStrategy("#cacheSecretPath#", true,"#salt#")).withRefreshSecretStrategy(new DefaultRefreshSecretStrategy("#ttlName#")) .withCacheStage("#stage#").withSecretTTL("#secretName#", 1 * 60 * 1000l).withSecretTTL("#secretName1#", 2 * 60 * 1000l).build(); SecretInfo secretInfo = client.getSecretInfo("#secretName#");
在文档使用中是否遇到以下问题
更多建议
匿名提交