凭据管理概述
“凭据”用于验证身份和授权访问的证明信息。在信息安全和身份认证领域,凭据是确保只有授权用户才能访问系统、资源或服务的关键机制。凭据的类型包括:用户名和密码、数字证书、密钥对(公钥和私钥)、令牌、生物识别信息、一次性密码、智能卡等。
通用凭据
通用凭据支持在各场景下进行自定义凭据的全生命周期管理,用户可以通过凭据管理服务实现对数据库账号口令、服务器口令、SSH Key、访问密钥等各类型凭据的统一管理、检索与安全存储,且支持多个版本管理,方便用户实现凭据轮转。
轮转凭据
数据库凭据泄露是导致数据泄露的主要途径。凭据管理服务支持托管RDS、TaurusDB凭据,能够全自动的定期轮转与手动立即轮转,满足各类数据库凭据管理场景,降低业务数据面临的安全风险。
凭据类型 |
数据库类型\实例 |
---|---|
RDS凭据 |
MySQL、PostgreSQL、SQLServer、MariaDB、TaurusDB。 |
TaurusDB凭据 |
TaurusDB实例,原GaussDB(for MySQL)实例。 |
通用凭据与轮转凭据差异
凭据类型 |
通用凭据 |
轮转凭据 |
---|---|---|
使用场景 |
各场景下自定义凭据的全生命周期管理 |
|
是否支持自动轮转 |
否,需要用户自行触发轮转 |
是,支持单双用户两种经典轮转模型 |
轮转凭据使用流程
流程说明:
- 创建一个轮转凭据。
- 设置凭据名称、标签等。
- 配置自动轮转策略。
- 应用系统在使用过程中需要访问数据库时,可以向CSMS服务请求访问凭据,获取凭据值,调用API接口详情请参见查询凭据版本和凭据值。
- 应用系统通过访问返回的凭据值解析明文数据,获取账号和密码后,可以访问该用户对应的目标数据库。
- 开启自动轮转后,数据库实例所托管的密码将定时轮转更新,请确认使用该数据库实例的应用端已完成代码适配,可在数据库连接建立时,动态获取最新凭据。
- 不要轻易缓存凭据中的任何信息,避免账号密码轮转后失效,导致数据库连接失败。
轮转凭据创建委托
首次开启轮转时,当用户确认授权后,CSMS会在当前区域当前项目下,帮助用户自动创建委托授权。因此,用户需要确认账号拥有IAM相关权限:iam:permissions:grantRoleToAgencyOnProject、iam:agencies:listAgencies、iam:roles:listRoles、iam:agencies:createAgency、iam:permissions:checkRoleForAgencyOnProject、iam:roles:createRole。
根据轮转凭据类型不同,创建的委托不同:
- RDS凭据
- 创建一个名为CSMSAccessFunctionGraph的委托 ,账号是op_svc_kms,权限名称是CSMSAccessFunctionGraph,使用项目级服务策略,包含函数工作流服务(FunctionGraph)的同步执行函数的权限(functiongraph:function:invoke)。
- 创建一个名为FunctionGraphAgencyForRotateRDSByCSMSV3委托 ,云服务是FunctionGraph,权限名称是FunctionGraphAgencyForRotateRDSByCSMSV3,使用项目级服务策略,包含:
- 凭据管理服务(CSMS)的相关权限:csms:secret:getVersion、csms:secret:listVersion、csms:secret:createVersion、csms:secret:getStage、csms:secret:get、csms:secret:updateStage。
- 虚拟私有云云服务(VPC)的相关权限:vpc:ports:create、vpc:vpcs:get、vpc:ports:get、vpc:ports:delete、vpc:subnets:get。
- 密钥管理服务(KMS)的相关权限:kms:cmk:createDataKey、kms:cmk:decryptDataKey。
- 云数据库(RDS)的相关权限:rds:password:update。
- TaurusDB凭据
- 创建一个名为CSMSAccessFunctionGraph的委托 ,账号是op_svc_kms,权限名称是CSMSAccessFunctionGraph,使用项目级服务策略,包含函数工作流服务(FunctionGraph)的同步执行函数的权限(functiongraph:function:invoke)。
- 创建一个名为FunctionGraphAgencyForRotateGaussDBByCSMSV3委托 ,云服务是FunctionGraph,权限名称是FunctionGraphAgencyForRotateGaussDBByCSMSV3,使用项目级服务策略,包含:
- 凭据管理服务(CSMS)的相关权限:csms:secretVersion:get、csms:secretVersion:list、csms:secretVersion:create、csms:secretStage:get、csms:secret:get、csms:secretStage:update。
- 虚拟私有云云服务(VPC)的相关权限:vpc:ports:create、vpc:vpcs:get、vpc:ports:get、vpc:ports:delete、vpc:subnets:get。
- 密钥管理服务(KMS)的相关权限:kms:dek:create、kms:dek:decrypt。
- 云数据库TaurusDB的相关权限:gaussdb:user:modify。