Open eastonman opened 3 years ago
Hi,发现一些小问题。
_get_zoneid
由于接口是模糊搜索的,当账户存在 同域子域名 或 更长但末尾相同的域名 等情况时,会Get到多个ID
例如账户存在公网解析域名: a.com b.a.com ca.com
如果为 d.a.com 创建DNS验证时,会用a.com,response筛出3个Zone的ID,处理后换行分割,在 _add_record GET 时 https://github.com/acmesh-official/acme.sh/blob/1476f83ba71955feb386e3a2f194cb07b6f8f9cc/dnsapi/dns_huaweicloud.sh#L168 会异常
_get_recordset_id()
返回的response的"self"包含被检索的name。
{ "links": { "self": "https://dns.myhuaweicloud.com/v2/zones/xxxxxxxxxx/recordsets?name=id.aaa.com" }, "recordsets": [], "metadata": { "total_count": 0 } }
如果只是判断 “id” 字符串是否存在,会导致包含 "id" 的域名,例如 aaaaid.com、或者 id.aaa.com,recordset一直判为存在,无限重复尝试删除。
@tutugreen 感谢您! acme.sh这边提交PR需要跑action的测试 https://github.com/acmesh-official/acme.sh/wiki/DNS-API-Test 您 #3887 的PR如果不方便配置action,也可以由我帮您提交PR
@eastonman Wow,谢谢指导!我这边试试调整下。
2022-01-05 Edited:试了N波,终于把 Check 跑通了,有讲究的,学到很多,重新提了PR。
报错了,提示
dns_api(dns_huaweicloud): Error getting token.
报错了,提示
dns_api(dns_huaweicloud): Error getting token.
修改 dnsapi 中 dns_huaweicloud.sh
修改 dnsapi="https://dns.ap-southeast-1_.myhuaweicloud.com"
将 ap-southeast-1 改为国内任意一个节点,如 :cn-north-4
报错了,提示
dns_api(dns_huaweicloud): Error getting token.
修改 dnsapi 中 dns_huaweicloud.sh
修改 dnsapi="https://dns.ap-southeast-1_.myhuaweicloud.com"
将 ap-southeast-1 改为国内任意一个节点,如 :cn-north-4
我好像知道问题了,我这个是华为账号不是华为云账号,看华为官方文档,华为账号是不能通过密码获取token的,,只有华为云账号才可以,,或者就是升级到企业用户在创建子账户去获取,,华为这逻辑是真恶心啊
报错了,提示
dns_api(dns_huaweicloud): Error getting token.
修改 dnsapi 中 dns_huaweicloud.sh 修改 dnsapi="https://dns.ap-southeast-1_.myhuaweicloud.com" 将 ap-southeast-1 改为国内任意一个节点,如 :cn-north-4
我好像知道问题了,我这个是华为账号不是华为云账号,看华为官方文档,华为账号是不能通过密码获取token的,,只有华为云账号才可以,,或者就是升级到企业用户在创建子账户去获取,,华为这逻辑是真恶心啊
创建了子账号 给了admin 权限都获取不了啊
Please report here if you encounter any bugs related to HuaweiCloud DNS API