认证鉴权 本文为API接口鉴权签名生成指南。 完整的EOP请求,除了业务参数以外,还必须在请求头中包含以下鉴权信息: ctyuneoprequestid:请求ID eopdate:请求时间 EopAuthorization:构造的鉴权头(关键) 下面说明具体的签名生成流程。 一、准备工作 1. 获取密钥 :登录天翼云控制台 → 账号中心 → 安全设置 → 用户AccessKey,获取ctyuneopak和ctyuneopsk。 2. 生成时间:请求时间eopdate必须为北京时区的当前时间,格式为YYYYMMDDTHHMMSSZ(如:20211221T163614Z)。 3. 请求ID:每个请求都必须有一个唯一的ctyuneoprequestid,推荐用UUID生成。 二、签名生成流程(4步完成) 步骤1:构造待签名字符串 待签字符串由三部分构成:“需要签名的header参数”、“查询参数(如果有)”、“请求体(如果有)”,通过"n"连接。 plaintext 待签名字符串 排序后的请求头 + "n" + 排序后的查询参数 + "n" + 请求体SHA256哈希值 具体操作: 请求头处理 :必须包含ctyuneoprequestid和eopdate,按header名称字母顺序排序。 plaintext header1:value1nheader2:value2nheader3:value3 查询参数处理 :按参数名字母顺序排序,用&连接。 plaintext param1value1¶m2value2 请求体处理:对原始请求体进行SHA256哈希,转为16进制字符串。 步骤2:构造动态密钥 使用 HMACSHA256 算法,进行链式计算,生成动态密钥。HMACSHA256(key, data) 表示使用密钥 key 对数据 data 进行 HMACSHA256 计算。 plaintext ktime HMACSHA256(ctyuneopsk, eopdate) kAk HMACSHA256(ktime, ctyuneopak) kdate HMACSHA256(kAk, eopdate的前8位日期)