华为云对象存储OBS为obsutil配置自动获取访问密钥_云淘科技

特性说明

除了从配置文件.obsutilconfig中获取访问密钥(AK/SK)外,obsutil还提供链式自动获取访问密钥功能,可以从系统环境变量获取访问密钥,或者通过ECS接口获取临时访问密钥。

启用链式获取访问密钥功能后,obsutil会依次从.obsutilconfig配置文件 -> 系统环境变量 -> ECS弹性云服务器中尝试获取可用的访问密钥。

配置方式

启用链式自动获取访问密钥功能。

将.obsutilconfig配置文件中的autoChooseSecurityProvider配置为true。

配置obsutil获取访问密钥的方法。

如果希望从.obsutilconfig配置文件中获取访问密钥,则将访问密钥配置在.obsutilconfig配置文件的ak、sk参数中(.obsutilconfig配置文件在初始化时已经自动写入密钥,初始化操作参见初始化配置)。
如果希望通过系统环境变量获取访问密钥,则将环境变量中的OBS_ACCESS_KEY_ID设置为ak,OBS_SECRET_ACCESS_KEY设置为sk,OBS_SECURITY_TOKEN设置为token(可为空)。
如果希望通过ECS接口自动获取临时访问密钥,则只需要确保该ECS绑定了IAM对ECS的云服务委托,并给委托配置OBS权限。具体请参见在ECS上获取Security Key。

访问密钥查找流程

从.obsutilconfig配置文件中(ak、sk、token)查找访问密钥,如果访问密钥不为空,结束查找,否则继续下一步查找。
从系统环境变量(OBS_ACCESS_KEY_ID、OBS_SECRET_ACCESS_KEY、OBS_SECURITY_TOKEN)查找访问密钥,如果访问密钥不为空,结束查找,否则继续下一步查找。
从当前使用obsutil的ECS查找临时访问密钥,如果临时访问密钥不为空,结束查找,否则使用匿名用户访问OBS服务。

访问密钥不为空是指至少ak和sk同时不为空,token可为空。
从系统环境变量查找访问密钥时,OBS_ACCESS_KEY_ID对应ak,OBS_SECRET_ACCESS_KEY对应sk,OBS_SECURITY_TOKEN对应token。
如果使用客户端跨区域复制模式,则系统环境变量中的OBS_ACCESS_KEY_ID_CRR对应akCrr,OBS_SECRET_ACCESS_KEY_CRR对应skCrr,OBS_SECURITY_TOKEN_CRR对应tokenCrr。
从ECS查找访问密钥的前提条件是obsutil在ECS上运行且该ECS绑定了委托。
开启链式自动获取访问密钥功能后,您仍需要配置endpoint。

父主题: 最佳实践

同意关联代理商云淘科技,购买华为云产品更优惠(QQ 78315851)

内容没看懂? 不太想学习?想快速解决? 有偿解决: 联系专家