检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
解决方法 下载js版本,查看可视化签名SDK,获取签名字符串。 解压压缩包,使用浏览器打开“demo.html”文件。 获取x-sdk-date值,x-sdk-date值必须与当前时间相差在15min以内。
图1 查看项目ID 如果要查看子项目ID,请单击该项目,展开子项目列表后获取。 父主题: AK/SK签名认证操作指导
伪代码如下: signature = HexEncode(HMAC(Secret Access Key, string to sign)) 其中HMAC指密钥相关的哈希运算,HexEncode指转十六进制。伪代码中参数说明如表1所示。
、请求体和签名使用的方法、路径、查询参数、请求体是否一致 检查客户端机器时间是否正确 请参考使用APP认证调用API检查签名代码的问题。
将生成的签名信息作为请求消息头添加到HTTP请求中,或者作为查询字符串参数添加到HTTP请求中。 本章节主要用于帮助用户自行完成API请求的签名。 签名SDK与demo章节提供了常用语言的签名SDK以及demo,与本章节提供的算法逻辑一致,您可以直接使用,省去自签名步骤。
查看“Key”值,并重新配置appkey。
1 HttpWebRequest req = signer.Sign(r); 访问API,查看访问结果。
1 signer.createSignature(request); 使用curl库访问API,查看访问结果。
params sig_params_free(¶ms); return 0; } 运行make命令编译,得到可执行文件main,执行main文件,查看结果。
之前有空格但没有逗号,但是SignedHeaders与Signature之前需要使用逗号隔开。
查看账号名和账号ID。 图1 查看账号名和账号ID 父主题: AK/SK签名认证操作指导
添加规范查询字符串(CanonicalQueryString),以换行符结束。 释义: 查询字符串,即查询参数。如果没有查询参数,则为空字符串,即规范后的请求为空行。
request.setKey("P0HE****69X0"); request.setSecret("3WJu****hDVs"); request.setMethod("GET"); request.setUrl("url"); request.addHeader("X-Security-Token
为了保证历史兼容性,系统会使用访问密钥创建时间作为最近使用时间的初始值。在您使用该访问密钥时,系统将自动刷新最近使用时间。 输入描述信息,单击“确定”。 创建成功后,在“创建成功”弹窗中,单击“立即下载”下载密钥,并妥善保管。
以Linux系统为例在本地将已获取的AK/SK设置为环境变量。 打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。
以Linux系统为例在本地将已获取的AK/SK设置为环境变量。 打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。
以Linux系统为例在本地将已获取的AK/SK设置为环境变量。 打开终端,输入以下命令打开环境变量配置文件。 vi ~/.bashrc 设置环境变量,保存文件并退出编辑器。
访问API,查看访问结果。
1 $curl = $signer->Sign($req); 访问API,查看访问结果。
1 var opt = sig.Sign(r) 访问API,查看访问结果。