Skip to content
zanxiaofei edited this page Dec 21, 2016 · 3 revisions

1.1配置鉴权参数

String RTC_AUTH_URI = "https://rtc.vcloud.ks-live.com:6001";
//设置鉴权信息,域名+鉴权串形式,域名使用rtc.vcloud.ks-live.com:6001/auth,鉴权串请客户在自己的appserver生成。
String authString = "accesskey=D8uDWZ88ZK8/eZHmRm&expire=1470212584&nonce=wybR8MEyhOpALCGh7xg17R5ejDrtk0&public=0&uniqname=apptest&signature=uFByPHHUKbszXR2t5NAuoUgTw%3D&uid=1000";   
String RTC_UINIQUE_NAME = "apptest";    
mStreamer.getRtcClient().setRTCAuthInfo(RTC_AUTH_URI, authString,
                mRTCLocalURIEditText.getText().toString());
mStreamer.getRtcClient().setRTCUniqueName(RTC_UINIQUE_NAME);

1.2鉴权信息参数说明:

accesskey: 公钥,长度为20个字符的ASCII字符串,由金山云颁发,与私钥成对。与直播服务使用的相同。
uniqname: 由金山云颁发,用于唯一标识客户身份。
expire:签名的过期时间,Linux UTC标准时间戳,如1141889120,超过此时间的URL将无法使用
public:表示流的公开或私密,默认值为1即为公开,值为0表示私密
nonce:可选,随机数
uid:本地id的信息
signature:生成的签名(需要uid字段)具体算法参考:http://v.ksyun.com/doc.html#/doc/livesdk.md

1.3鉴权需要注意的事项

uid是必选项目,生成signature需要计算在内。

需要注意所有的Resource必须是排序状态,所以uid应该在uniqname前面,nonce后面,请不要随意填写。

简单的鉴权规则如下:

stringToSign = "GET\n" + str(expiretime) + "\n"
strResource = "nonce=" + nonce + "&uid=" + uid + "&uniqname=" + UNIQNAME
stringToSign = stringToSign + strResource

Clone this wiki locally