由于分销API分销商和供应商都可以查询,导致一份订单数据在rds订单同步中可能是以分销商维度推送、也可能是以供应商维度推送。
这样无法确定在RDS中的数据是以那个商家维度加密的。故这一类的接口取消app+用户id的加密方式,改造成app公共秘钥加密。
变更API:
taobao.fenxiao.orders.get;
taobao.fenxiao.trademonitor.get;
这两个接口取消app+用户id的加密方式,改造成app公共秘钥加密(请查看下方解决方式)。
变更API:
taobao.fenxiao.dealer.requisitionorder.get;
taobao.fenxiao.dealer.requisitionorder.query;
这2个接口涉及到分销商的隐私数据未涉及到用户隐私,从3.21号开始暂时停止对这2个接口的加密,已加密数据可以解密。
加密方案:单用户维度接口使用的是每个用户+appkey单独分配秘钥,多用户维度接口采用一个app一个秘钥。
使用手册:java、c#先升级sdk至最新版本(2017年3月17日及以后版本),PHP版本2017年3月24日前发布。
若数据源来自分销接口
taobao.fenxiao.orders.get,taobao.fenxiao.trademonitor.get;
加密:调用securityClient.encrypt(String data, String type);
解密:调用securityClient.decrypt(String data, String type);
和securityClient.decrypt(String data, String type, String session)方法进行解密。
分销数据加密仅能使用securityClient.encrypt(String data, String type)方式。
分销数据解密可以使用上述两个解密方法(为适配已经改造的用户)。
注:如若您线上环境的分销API没有加密要求,可以不做相关修改(只升级SDK)。
公钥加解密只能用于分销数据加解密,请不要用于普通订单加解密,这将影响到后面的验收上线!!